Operatorenüberladung...



  • Hi 🙄,

    bool operator!=(SObjectData& a, SObjectData& b)
    {
        if(a.max_anims != b.max_anims ||
           a.name      != b.name      ||
           a.sanimpos  != b.sanimpos  ||
           a.speed     != b.speed)
           return true;
        return false;
    }
    

    Diesen feinen Operator habe ich in einer C++-Datei überladen.
    In einer anderen steht folgendes:

    SilvaObjects[0] != *(*iterator)->getobjdata()
    

    iterator vom Typ std::vector<Object*>::iterator
    Der Compiler meldet den Fehler, dass kein Operator definiert sei, der einen linksseitigen Typ SObject akzeptiert, oder, dass keine geeignete Konvertierung möglich sei...
    SilvaObjects ist vom Typ SObjectData* und getobjdata() liefert ebenfalls SObjectData*, deswegen kann ich das nicht verstehen.

    Woran könnte es liegen, dass er den Operator nicht erkennt? 😕

    MfG MAV

    [ Dieser Beitrag wurde am 10.06.2003 um 12:32 Uhr von Mis2com editiert. ]



  • Argh, ich Depp...

    Schon klar jetzt 🙂 ^^


Anmelden zum Antworten