Vergleichsfunktion



  • Folgendes Problem:

    Methode einer Templateklasse soll 2 Membervariablen vom Typ T vergleichen.
    Und bei Ungleichheit true zurückgeben. Nun wäre hier die Formel ja ganz einfach:

    return (m_value1 != m_value_2);
    

    Wenn da nicht das Problem mit den Gleitkommazahlen wäre. Da diese noch in einer bestimmten Toleranz liegen müssen aufgrund von Rechenungenauigkeiten. Die Formel stellt auch noch kein Problem dar:

    return ( fabs(*m_value1 - m_value2) > m_floatTolerance );
    

    Allerding stellt sich nun die Frage wie unterscheide ich wann ich welche Funktion verwenden muss. Oder gibt es eine allgemeingültige Formel. Für int Werte würde die 2te Formel ja auch Funktionieren. Aber halt bei bool Werten nicht.



  • Keiner eine Idee?


Anmelden zum Antworten