 |
JLI Spieleprogrammierung
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
TheMillenium Dark JLI'ler
Anmeldedatum: 21.07.2002 Beiträge: 1427 Wohnort: World Medaillen: Keine
|
Verfasst am: 10.09.2004, 18:32 Titel: Objekte flüstern, keiner merkt's! ;) |
|
|
Hi!
Ich wollte mal nur aus Neugierde wissen ob man sowas realisieren kann:
Ich hab ein Objekt, sagen wir die CDirect3D Klasse. Es ist ja zu 99,99% wahrscheinlich dass die nur einmal instanziert wird...
Gibt es dann eine Möglichkeit wenn ich z.B. ein Menü-Objekt instanziert habe, dass es automatisch die Zeichenfunktionen von der CDirect3D Klasse benutzen kann ohne dass man ihr auch über ein Member-Funktionsaufruf den Zeiger übergibt noch das man ein Objekt der CDirect3D in dem Menü-Objekt hat? Also so ein Befehl:
schnappe dir das zuerst instanzierte Objekt von dem Datentyp CDirect3D und nenne es in dieser Klasse Direct3D;
Erklärung des Topics: Hätte man nun beide Klassen in libs oder/und dlls, dann würde keiner merken dass die eine Klasse auf die andere zugreif außer wenn man die Include von den Headers sich anschaut. Will ich aber gar nicht machen, mich würde nur interessieren ob soetwas möglich ist, da meiner Meinung nach der Code übersichtlicher bliebe und ich nicht immer diese extern Befehle bräuchte. Und die will ich nicht verwenden, den dann muss jeder der den Code/Engine verwenden will seine Basisklassen immer genauso nennen wie vorgegeben... _________________ The source of all power is in its destiny... |
|
Nach oben |
|
 |
Mazze JLI'ler
Alter: 39 Anmeldedatum: 02.01.2004 Beiträge: 145
Medaillen: Keine
|
Verfasst am: 10.09.2004, 21:37 Titel: |
|
|
Das riecht verdächtig nach einem Singelton:
Mal ein Beispiel Code:
Code: |
class SingelTon {
static SingelTon *m_this;
public:
static SingelTon *getInstance() {
return m_this;
}
SingelTon() {
//Gucken ob m_this schon einen Wert hat; wenn ja dann abbrechen, wenn nein dann
//m_this = this;
}
};
|
Auf diese weise kann es von der Klasse Singelton nur eine Instanz geben. Mit der Funktion getInstance() kannst du dann einen Pointer auf die einzige existierende Instanz kriegen.
Das ist imo die elegantes Lösung für so einen Fall. |
|
Nach oben |
|
 |
|
|
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
|