JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=7e7802ceb60f762133985b1b6968c46aMedaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Frage zu "new" und Klassen

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
njubee
Mini JLI'ler



Anmeldedatum: 17.06.2006
Beiträge: 16

Medaillen: Keine

BeitragVerfasst am: 20.08.2007, 18:55    Titel: Frage zu "new" und Klassen Antworten mit Zitat

Es ist bitte folgendes:
Ich habe eine Basisklasse (GUIElement) von der ich weitere Klassen ableite (GUIButton, GUIStatic,...). Nun möchte ich die GUI-Strutur aus einer Datei einlesen, und die jeweiligen Objekte dynamisch mit "new" erzeugen. Jetzt müsste ich ja für jedes Objekt die richtige abgeleitete Klasse nehmen z.b.

/*vereinfacht*/
switch (typ)
case "Button"
new GUIButton
case "static"
new GUIStatic usw.

Gibt es für mein Problem eine bessere Lösung?
PS:Ich bin ein ziemlicher Anfänger, und deshalb für jeden Tip dankbar.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
David
Super JLI'ler


Alter: 39
Anmeldedatum: 13.10.2005
Beiträge: 315

Medaillen: Keine

BeitragVerfasst am: 20.08.2007, 18:58    Titel: Antworten mit Zitat

Factorypattern?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
njubee
Mini JLI'ler



Anmeldedatum: 17.06.2006
Beiträge: 16

Medaillen: Keine

BeitragVerfasst am: 20.08.2007, 19:16    Titel: Antworten mit Zitat

Habe ich noch nie was davon gehört. Nach 10 min. googeln habe ich folgendes gefunden
Zitat:
"Um dies zu realisieren, erstellt man eine Methode, an einem zentralen Punkt, beispielsweise einer Factory Pattern Klasse, welche bei der Übergabe einer bestimmten ID ein Objekt einer bestimmten Klasse zurück gibt"

Volltreffer!
Vielen Dank!!!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Otscho
Super JLI'ler


Alter: 36
Anmeldedatum: 31.08.2006
Beiträge: 338
Wohnort: Gummibären-Gasse
Medaillen: Keine

BeitragVerfasst am: 21.08.2007, 12:06    Titel: Antworten mit Zitat

Genau so mach ichs auch.
Funtzt recht akzeptabel.

Wenn dir noch etwas unklar ist, wie man das realisieren könnte, kannst ja mal in die Direct3D-Samples schauen Wink
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
David
Super JLI'ler


Alter: 39
Anmeldedatum: 13.10.2005
Beiträge: 315

Medaillen: Keine

BeitragVerfasst am: 21.08.2007, 13:00    Titel: Antworten mit Zitat

Otscho hat Folgendes geschrieben:
Funtzt recht akzeptabel.


Dann machst du was falsch. Das Factory Pattern is genau für sowas da! Das sollte ganz hervorragend funktionieren!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
DirectXer
Dark JLI'ler



Anmeldedatum: 05.02.2005
Beiträge: 1201
Wohnort: Köln
Medaillen: Keine

BeitragVerfasst am: 21.08.2007, 13:53    Titel: Antworten mit Zitat

David hat Folgendes geschrieben:
Otscho hat Folgendes geschrieben:
Funtzt recht akzeptabel.


Dann machst du was falsch. Das Factory Pattern is genau für sowas da! Das sollte ganz hervorragend funktionieren!

ich wette dass sich das auf den Unterschied bezieht, das FP entweder mit new / delete explizit zu implementieren, oder std::auto_ptr (oder noch besser std::tr1::shared_ptr) zu benutzen. Bei ersterem müsste man sich nämlich noch manuell um das deleten kümmern

Gruß DXer
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Hazel
JLI MVP
JLI MVP


Alter: 39
Anmeldedatum: 19.07.2002
Beiträge: 1761

Medaillen: Keine

BeitragVerfasst am: 21.08.2007, 15:22    Titel: Re: Frage zu "new" und Klassen Antworten mit Zitat

njubee hat Folgendes geschrieben:
Es ist bitte folgendes:
Ich habe eine Basisklasse (GUIElement) von der ich weitere Klassen ableite (GUIButton, GUIStatic,...). Nun möchte ich die GUI-Strutur aus einer Datei einlesen, und die jeweiligen Objekte dynamisch mit "new" erzeugen. Jetzt müsste ich ja für jedes Objekt die richtige abgeleitete Klasse nehmen z.b.

/*vereinfacht*/
switch (typ)
case "Button"
new GUIButton
case "static"
new GUIStatic usw.

Gibt es für mein Problem eine bessere Lösung?
PS:Ich bin ein ziemlicher Anfänger, und deshalb für jeden Tip dankbar.


Das ist schon das Factory Pattern, wenn du das noch abkapselst. Wenn es mit Objekttypen überhand nimmt gibt es noch das Abstract Factory Pattern.

http://en.wikipedia.org/wiki/Factory_method_pattern
http://en.wikipedia.org/wiki/Abstract_factory_pattern
_________________
*click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Otscho
Super JLI'ler


Alter: 36
Anmeldedatum: 31.08.2006
Beiträge: 338
Wohnort: Gummibären-Gasse
Medaillen: Keine

BeitragVerfasst am: 21.08.2007, 17:44    Titel: Antworten mit Zitat

David hat Folgendes geschrieben:
Otscho hat Folgendes geschrieben:
Funtzt recht akzeptabel.


Dann machst du was falsch. Das Factory Pattern is genau für sowas da! Das sollte ganz hervorragend funktionieren!

Sorry
Ich meinte "Funtzt recht akzeptabel" im Sinne von: Hey toll, es funktioniert exorbitant hervorragend, anstandslos. Was besseres ist mir in meinem bisherigen Leben noch nie untergekommen.
So, bis auf den letzten Satz sollte es stimmen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum