error C2664: kafkaeske Fehlermeldung



  • hallo, ihr wissenden!

    ich weiss, dass ich noch ein ziemlicher newbie bin, aber mein compiler spuckt nun schon seit tagen die folgende fehlermeldung aus:

    error C2664: 'Flaechenberechnung' : Konvertierung des Parameters 1 von 'class CFliesszustand' in 'class CFliesszustand' nicht moeglich

    HÄ? was will mir denn das sagen? zwischen den anführungszeichen steht origianl das gleiche- und der compiler denkt, das sei was unterschiedliches?
    hatte jemand schon mal dieses problem- und hat es erfolgreich gelöst?

    um jede antwort dankbar

    maxschu

    p.s.: habe schon die hilfe von c++ und die suche hier im forum gequält, aber nix gefunden.



  • Könnte es sein, dass Du CFliesszustand über '=' einem anderen zuweisen willst? Dann müsstest Du wohl den operator = überschreiben



  • Nein, ich will ein objekt der klasse CFliesszustand in einer funktion als parameter übergeben ( was wahrscheinlich irgendwie auf das gleiche rauskommt)- das könnte es aber schon sein (hoffentlich). leider habe ich mein buch nicht hier, in dem steht, wie man operatoren überschreibt- werde es morgen aber ausprobieren und wenns nicht klappt, dann nochmal um hilfe ersuchen.

    danke für die schnelle antwort!

    maxschu



  • Nimm doch & oder * im Parameter der Funktion
    Ansonsten

    myClass& operator=( const myClass& src)
    {
      // kopieren von Membervariablen
      // ...
      return *this;
    }
    

    [ Dieser Beitrag wurde am 24.10.2002 um 08:50 Uhr von RenéG editiert. ]



  • nur falls tatsächlich noch jemand mitliest:
    problem ist gelöst, der tipp von rene war der hinweis in die richtige richtung (nochmal danke)- nur musste man nicht (nur) den =operator überschreiben, sondern auch den copy-konstruktor, da der vom compiler generierte copy-konstruktor den dynamischen array (mit CArray gebildet) des objektes nicht ohne menschliche hilfe kopieren konnte.

    ich glaube, ich werde c++ im leben nicht verstehen.

    maxschu


Anmelden zum Antworten