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

1

16.11.2013, 12:27

Letztes listing kapitel 11

Hi, ich hab ne frage unzwar werden in dem friendklassenlisting im "int main" zwei instanzen erzeugt.
Einmal fuer tank und einmal fuer antrieb. Was ich nicht ganz verstehe ist: Warum wird eine tankinstanz erzeugt?
Die wird doch schon bei der erstellung für antrieb erzeugt, da im private diese instanz deklariert ist oder?

Zb. Programmiere ich ohne aussicht auf erfolg ein schachspiel. Das schachspiel besteht unter anderem aus einer spielerklasse, die alle spielfigurenklassen beinhaltet, indem ich sie in die spielerklasse jeweils als arrray implementiere. Sobald ich also eine spielerklasse erzeuge, werden auch alle figuren zum spieler erzeugt.

Wozu also das zusätzliche instanzieren im main?

Greetz

2

16.11.2013, 14:04

Antrieb hat nur einen privaten Zeiger auf ein Tank-Objekt. Das Objekt selbst wird nicht von Antrieb erzeugt. Dem Wert des Zeigers kann die Adresse eines Tank-Objekts über eine Funktion zugewiesen werden; was wohl auch passiert. In einer anderen Funktion von Antrieb kann auf die privaten Member von Tank zugegriffen werden, da Tank Freund von Antrieb ist; darum ging es in dem Kapitel.

TigerClaw25

unregistriert

3

17.11.2013, 09:11

Es ist einfach nur ein Kopierzeiger. Und wie oben bereits erwähnt kopierst du mittels einer Funktion den Zeiger der übergebenen Funktion. Das Beispiel von Kapitel 11 ist etwas sinnlos ;)

Werbeanzeige