Hello,
Pour ce qui est de ta variable globale singleton, ce n'en est pas une, c'est seulement l'initialisation d'une variable static dans une classe : C++ stipule que l'on doit initialiser les variables static à l'extérieur de la classe.
Etant donné que l'on écrit :
CSingleton *CSingleton::singleton = 0;
la variable singleton n'est accessible que dans la classe CSingleton (c'est ce que souligne le préfix "CSingleton::").
De plus, en C++ toujours, un pointeur null est initialisé à 0 et non à NULL, mais celà revient au même puisque je ne connais pas d'implémentation du C où NULL != 0. Je crois que dans la nouvelle norme C++ (C++0x pour l'instant), il y'aura une syntaxe pour les pointeurs null, ou pas...
Pour les éventuels problèmes de conception, je serais plutôt du même avis que Davidbrcz, mais n'étant pas très calé en la matière, je laisse à d'autres le soin de te conseiller
.
Partager