| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
| Autor |
Nachricht |
underberg JLI'ler
Anmeldedatum: 11.01.2003 Beiträge: 153
Medaillen: Keine
|
Verfasst am: 23.08.2003, 07:53 Titel: |
|
|
Funktioniert aber auch ohne Konstruktor...
Zu GetHaus():
Naja ich kenn das so.. Man nehme ein Array dort fügt man einfach per Add(CHaus Haus) eine Klasse hinzu und er nummeriert sie einfach durch, daher GetHaus(int num) gibst du beispielsweise 3 ein, gibt er dir das 3. Haus an... Der Rückgabe werd müsste dann halt nur CHaus sein (beispielsweise)...
Und mehr brauch ich eigentlich gar nicht... Nur die Add(CHaus) und die GetHaus(int num)... Mehr muss die Liste gar nicht erfüllen...
Warum kann ich denn nicht einfach ein Array (CObArray) bei mir einbinden? |
|
| Nach oben |
|
 |
Hazel JLI MVP


Alter: 40 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
Verfasst am: 23.08.2003, 08:55 Titel: |
|
|
| underberg hat Folgendes geschrieben: | | Funktioniert aber auch ohne Konstruktor... :D |
Es geht ja auch um den Destruktor. Wenn du ihn nicht als virtual deklarierst erzeugst du Memoryleaks. Bei Vererbung ist es wichtig, dass man ihn als virtual deklariert(sollte in jedem C++ Buch stehen.... )
Wenn du per Index auf die Häuser zugreifen willst brauchst du nur list< > durch vector< > auszutauschen(und vector statt list inkludieren). Dann kannst du mit push_back() Häuser hinzufügen und wie bein einem C-Array auf die Elemente zugreifen:
| Code: |
vector<CHaus *> meinVektor;
meinVektor.push_back(new CSkyscraper());
meinVektor.push_back(new CPentagon());
meinVektor.push_back(new CBank());
CHaus * pHaus = meinVektor[0]; // Der Wolkenkratzer
|
_________________ *click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
|
|
| Nach oben |
|
 |
underberg JLI'ler
Anmeldedatum: 11.01.2003 Beiträge: 153
Medaillen: Keine
|
Verfasst am: 23.08.2003, 11:56 Titel: |
|
|
| Danke geht... |
|
| Nach oben |
|
 |
|