Typ von Variable zur Laufzeit überprüfen



  • Ich habe eine Funktion die entweder double oder Complex als als Eingaben erwartet und eins von beidem wieder ausgibt.

    Derzeit hat diese Funktion die Überschreibungen

    double -> double
    complex -> double
    double -> complex
    complex -> complex

    Ich würde das gerne zu einer Funktion zusammenfassen und müsste dazu ein Template schreiben. Dann muss ich aber je nachdem ob ich in der Funktion einen double oder Complex Typ als Variable habe die Werte anders behandeln.
    Dazu müsste ich also ein Abfrage folgender Art machnen:
    if (Typeof(var1)==double) { ...

    Geht das und wie implementiert man soetwas ?

    Matthias



  • Templates machen nur Sinn, wenn du jeden Typ gleich behandeln willst/kannst. Wenn es nötig ist, je nach Parametertypen etwas anderes zu machen, bleib lieber bei deinen (normal) überladenen Funktionen.


Anmelden zum Antworten