Hi,
Ein Objekt soll einen Zeiger auf sich selbst an ein weiteres Objekt
übergeben. Ich habe versucht als Parameter einfach "this" zu übergeben
jedoch scheint das nicht zu funktionieren da es folgende Fehlermeldungen
gibt wenn ich es dann über den übergebenden Zeiger ansprechen(eine
Funktion aufrufen) will:
bei dem Objekt an den der Zeiger übergeben werden soll:
1 | an_funktion(class ObjektNr1* ein_objekt1)/* das ist der Konstruktor des ObjektsNr2 das den Objektzeiger als parameter bekommen hat.*/
|
>invalid use of undefined type `struct das_objekt'
und bei dem Befehl eine Funktion des Objektes über den übergebenden
Zeiger aufzurufen:
1 | einobjekt1->funktion_des_obkjekts1();
|
>13 forward declaration of `struct das_objekt'
Das objekt ist eigentlich gar keine struct.
Hier der Code wo das ObjektNr2 vom ObjektNr1 mit einem Zeiger auf
ObjektNr1 mit new erzeugt werden soll.
1 | // in der objekt implemetation
|
2 | neues_objekt2 = (ObjektNr2*) new ObjektNr2(this); /* hier wird das ObjektNr2 mit dem This Zeiger erzeugt.*/
|
3 | //... der Konstruktor des ObjektNr2
|
4 | ObjektNr2(class ObjektNr1 * ein_objekt1){
|
5 | einobjekt1->funktion_des_obkjekts1(); // das funktioniert nicht. /* funktion_des_obkjekts1 existiert in ObjektNr1*/
|
6 | }
|
Ich hoffe ihr könnt verstehen was ich meine und mir Tipps geben. Danke