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

Lemming

Alter Hase

  • »Lemming« ist der Autor dieses Themas

Beiträge: 550

Beruf: Schüler

  • Private Nachricht senden

1

14.05.2006, 20:45

intellisense und template singletons

hi leutz,
ich hab probleme mit meinem intelli sense. ich benutze VC++ .NET 2003.

und zwar hab ich ne template singleton klasse geschrieben. mit der man per vererbung eine singleton klasse bauen kann. (wie in der ogre3D-Engine)

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
template<class T>
class SingletonT
{
protected:
    // hidden constructor and copy constructor

    SingletonT<T>(void){}
    SingletonT<T>(const SingletonT<T>& other){}

public:
    // destructor

    virtual ~SingletonT<T>(void){}
    // Creates an instance and returns a pointer on it

    static T* CreateInstance(void)
    // Deletes the instance

    static void DeleteInstance(void)
    // Returnes an instance Pointer

    static T* GetInstancePtr(void)

    // protected members

protected:
    static T* _pInstance;
};// SingletonT


class Bla : public SingletonT<Bla>
{
public:
    void eins(void);
    void zwei(void);
};

Bla* SingletonT<Bla>::_pInstance = NULL;


wenn ich jetzt klassen die davon erben verwende springt das intelli sense nicht an.

Beispiel:

C-/C++-Quelltext

1
2
3
4
// Die Klasse Bla ist sonen singleton wie oben gezeigt

Bla::CreateInstance();
// Bei Bla:: zeigt das intelli sense noch was an

// aber wenn ich schreibe Bla::GetInstancePtr()-> zeigt es nichts mehr
Es gibt Probleme, die kann man nicht lösen.
Für alles andere gibt es C++...

2

15.05.2006, 17:58

Hmm naja.. in Ogre3D ist die Lösung aus Gems 1 implementiert :D Die verwende ich auch rel oft. die Funzt gut :)

Wenn dann übernejm die ganz wie se da ist... so seh ich jetzt keinen direkten Sinn für deine Änderungen.
Devil Entertainment :: Your education is our inspiration
Der Spieleprogrammierer :: Community Magazin
Merlin - A Legend awakes :: You are a dedicated C++ (DirectX) programmer and you have ability to work in a team? Contact us!
Siedler II.5 RttR :: The old settlers-style is comming back!

Also known as (D)Evil

Lemming

Alter Hase

  • »Lemming« ist der Autor dieses Themas

Beiträge: 550

Beruf: Schüler

  • Private Nachricht senden

3

15.05.2006, 18:15

naja was heißt änderungen...

ich hatte den aufbau in der ogre noch grob im kopf und hab halt das gemacht was ich bzw wir gebraucht haben...

und ich muss sagen ich finde es sehr praktisch die instanz so umfangreich kontrollieren zu können...
Es gibt Probleme, die kann man nicht lösen.
Für alles andere gibt es C++...

Werbeanzeige