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
AnsonstenmyClass& 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