heute in Theorie der Programmiersprache Klasse wir dieses Verhalten in Java gesehen haben:Parametric Methoden mit verschiedenen Subtypen
public class Es {
...
<Y> Y choose(Y y1, Y y2){
Y returnVal;
if("some test"){ returnVal = y1;} else{ returnVal = y2;}
return returnVal;
}
}
In Main:
Es c = new Es();
Integer i = 3;
Float f = (float) 4.5;
Number n = c.choose(i, f);
Wo die "unglaublich" ist, dass das Verfahren muss Wählen Sie zwischen Integer und Float für den parametrischen Typ Y und entscheiden Sie sich für den nächsten Supertyp, nämlich Number.
Ich mag würde dies in C++ reproduzieren, aber ich bin fest ...
Diese werden als [Generische Methoden] (https://docs.oracle.com/javase/tutorial/java/generics/methods.html) bezeichnet. Ich glaube, dass Sie dies in einer C++ - Vorlage konvertieren möchten, aber ich habe diese seit langer Zeit nicht mehr verwendet. Aber das könnte Ihnen helfen, etwas zu recherchieren – AxelH