ist es möglich, die Funktion wird akzeptieren, dass mehrere Datentypen für gegebenes argument?
Schreiben Sie eine Funktion, die ich erklären muß, Eingabe-und Ausgabe-Daten-Typen wie diesem:
int my_function (int argument) {}
Ist es möglich, eine solche Erklärung abzugeben, dass meine Funktion akzeptieren würde, variable vom Typ int, bool oder char, und kann diese Ausgabe Daten-Typen ?
//non working example
[int bool char] my_function ([int bool char] argument) {}
Sie müssen sich in Vorlagen
es nennt sich Vorlagen
Dein link gibt einen 403-Fehler
ja, manchmal links sterben. Jedenfalls, können Sie einfach mit google nach "c++ templates" und wählen Sie einen der ersten links. Heute ist es dieser.
es nennt sich Vorlagen
Dein link gibt einen 403-Fehler
ja, manchmal links sterben. Jedenfalls, können Sie einfach mit google nach "c++ templates" und wählen Sie einen der ersten links. Heute ist es dieser.
InformationsquelleAutor rsk82 | 2011-12-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ihre Entscheidungen sind
ALTERNATIVE 1
Können Sie Vorlagen verwenden
ALTERNATIVE 2
Schlicht überladen von Funktionen
Geben Sie eine andere Funktion für jeden Typ jedes Arguments, die Sie erwarten. Sie können mischen Sie es, Alternative 1. Der compiler wird die richtige für Sie.
ALTERNATIVE 3
Können Sie union
ALTERNATIVE 4
Können Sie verwenden Polymorphismus. Vielleicht ein overkill für int , char , bool, aber nützlich für komplexere Klasse-Typen.
Bitte fühlen Sie sich frei zu Bearbeiten, die Antwort... ich in der Regel, wie stick zu standard-C++
Op fragt zurück, die denselben Typ wie das argument, nicht
int
jeder Zeitnicht alles muss steigern...
InformationsquelleAutor parapura rajkumar
Ausgabe:
Oder Sie tun können:
in diesem Fall ist es implizit folgert der Wert der 'typename T' basierend auf was für ein Typ das argument der Funktion 'f()' ist
InformationsquelleAutor stefanB
Verwenden Vorlage:
Oder einfach nur überlastung:
InformationsquelleAutor Andrew Marshall
Lesen Sie dieses tutorial, es gibt einige schöne Beispiele http://www.cplusplus.com/doc/tutorial/templates/
InformationsquelleAutor Kashif Khan