Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Suchergebnisse

Suchergebnisse 1-9 von insgesamt 9.

Werbeanzeige

03.06.2008, 16:21

Forenbeitrag von: »Melechesh«

Überladen der Operatoren = und +=

C-/C++-Quelltext 1 2 3 4 5 6 7 8 class tdeVector3f { public: float x,y,z; //... tdeVector3f& operator=( const tdeVector3f& a ); //<- tdeVector3f& operator+=( const tdeVector3f& a ); //<- }; Hier muss der =-Operator definiert werden, dass ist bspw. beim +-Operator nicht der Fall. Das ganze führt dann ja auch zum folgenden Unterschied: C-/C++-Quelltext 1 2 inline tdeVector3f operator + (const tdeVector3f& a, const tdeVector3f& b) { C-/C++-Quelltext 1 inline tdeVector3f& tdeVector3f::operator = (c...

03.06.2008, 16:06

Forenbeitrag von: »Melechesh«

Überladen der Operatoren = und +=

Ou, da hab ich wohl vor lauter Code die Lösung nicht gesehen! Vielen Dank hat funktioniert! Nur mal so ne Verständniss-Frage: Wieso wird der "="- und der "!="-Operator anders behandelt als "+","-" usw. ? Gibt es da dafür einen speziellen Grund?

03.06.2008, 15:30

Forenbeitrag von: »Melechesh«

Überladen der Operatoren = und +=

Siehe mein 2.Post, hab einfach noch ein die main-Funktion (die nichts tut) angehängt damit es auch kompillieren könnte.

03.06.2008, 15:26

Forenbeitrag von: »Melechesh«

Überladen der Operatoren = und +=

Zitat Deine erste Version war von der Funktionalität her schon richtig. Der Zuweisungsoperator soll ja etwas zuweisen. Wenn du einfach dein Objekt durchreichts hast du zum einen keine Kopie erzeugt, zum anderen gibst du ein nicht erwartetes Objekt zurück. Jetzt bin ich total verwirrt.... :? So, hab mal das ganze mit VC++ 6.0 kompilliert: Zitat d:\projects\main.cpp(60) : error C2801: 'operator =' must be a <Unknown> member d:\projects\main.cpp\main.cpp(61) : error C2065: 'x' : undeclared identif...

03.06.2008, 14:50

Forenbeitrag von: »Melechesh«

Überladen der Operatoren = und +=

@david_pb: :oops:, in demfall hab ich keine Ahnung was du meinst!

03.06.2008, 14:44

Forenbeitrag von: »Melechesh«

Überladen der Operatoren = und +=

Oh, natürlich: C-/C++-Quelltext 1 2 3 4 tdeVector3f& operator = (const tdeVector3f& a) { return a; } Ist das besser so?

03.06.2008, 14:32

Forenbeitrag von: »Melechesh«

Überladen der Operatoren = und +=

C-/C++-Quelltext 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 class tdeVector3f { public: float x,y,z; tdeVector3f() {} // Konstruktor (tut nichts) tdeVector3f(const tdeVector3f& v) : x(v.x), y(v.y), z(v.z) {} //Kopierkonstruktor tdeVector3f(const float vx,const float vy, const float vz) : x(vx...

03.06.2008, 14:21

Forenbeitrag von: »Melechesh«

Überladen der Operatoren = und +=

Ich habe folgendes Problem in Kapitel 2 (Vektoren): Beim kompillieren trten im folgenden Teil des Codes Fehler auf (mit Visual C++ 2008 Express), aber ich bin mir sicher alles richtig abgeschrieben zu haben (der Name der Klasse ist natürlich anders): C-/C++-Quelltext 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 //Zuweisung eines anderen Vektors tdeVector3f& operator = (const tdeVector3f& a) { x += a.x; y += a.y; z += a.z; return *this; } //Zuweisung und addition eines anderen Vektors tdeVector3f& o...

Werbeanzeige