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!

Werbeanzeige

21

30.01.2009, 12:53

jep kommt nen neuer fehler:
c:\users\flonk\projekte\aurora\main.cpp(127) : error C2440: '=': 'C_Objekt' kann nicht in 'C_Objekt *' konvertiert werden
1> Kein benutzerdefinierter Konvertierungsoperator verfügbar, der diese Konvertierung durchführen kann, oder der Operator kann nicht aufgerufen werden :(
Gewinnen ist, wenn man einmal mehr aufsteht, als man zu Boden geht.

22

30.01.2009, 12:59

Zitat von »"Flonk"«

C_Objekt *pSpielfeld;
Wie soll denn damit ein zweidimensionales dynamisches Array abgebildet werden? Du bräuchtest da schon einen Doppelzeiger.

23

30.01.2009, 14:19

momentan nutze ich

C-/C++-Quelltext

1
C_Objekt *pSpielfeld[100][100]
Gewinnen ist, wenn man einmal mehr aufsteht, als man zu Boden geht.

24

30.01.2009, 16:15

Dann hast du aber anfangs die falschen Typen gezeigt. pSpielfeld ist also ein zweidimensionales Array aus Zeigern auf C_Objekt. Forderst du dafür denn Speicher an?

Die Fehlermeldung sagt ja, was das Problem ist... Du kannst kein Objekt einem Zeiger zuweisen.

Also entweder speicherst du nur die Adressen der Objekte in pObjektliste:

C-/C++-Quelltext

1
pSpielfeld[x][y] = &pObjektliste[w];

Oder du kopierst die Objekte (an die Freigabe mit delete denken):

C-/C++-Quelltext

1
pSpielfeld[x][y] = new C_Objekt(pObjektliste[w]);

drakon

Supermoderator

Beiträge: 6 513

Wohnort: Schweiz

Beruf: Entrepreneur

  • Private Nachricht senden

25

31.01.2009, 11:35

Zitat von »"Flonk"«

momentan nutze ich

C-/C++-Quelltext

1
C_Objekt *pSpielfeld[100][100]


Willst du nicht eher :

C-/C++-Quelltext

1
C_Objekt pSpielfeld[100][100]

benutzen?
(Dann muss C_Objekt aber den Zuweisungsoperator = unterstützen)

Oder gleich einen Container, ala std::vector? (in boost gäbe es noch mehr Möglichkeiten).

Dann musst du dich nicht um den Speicher kümmern.

26

31.01.2009, 15:35

ich glaube ich habe mich mit dem versuch maßlos übernommen und werde wohl erstmal andere probleme behandeln und mehr lernen
ich entschuldige mich dafür
Gewinnen ist, wenn man einmal mehr aufsteht, als man zu Boden geht.

drakon

Supermoderator

Beiträge: 6 513

Wohnort: Schweiz

Beruf: Entrepreneur

  • Private Nachricht senden

27

31.01.2009, 15:54

Zitat von »"Flonk"«

ich glaube ich habe mich mit dem versuch maßlos übernommen und werde wohl erstmal andere probleme behandeln und mehr lernen
ich entschuldige mich dafür


Du musst dich nicht entschuldigen und du kannst das Problem schon angehen. Nur keine Angst. Wir sind dir nicht böse, wenn du etwas machst, dass du noch nicht ganz verstehst.. ;)

Werbeanzeige