Mon Singleton est-il correct ?
Bonjour,
dans une appli A1, je dois mettre des infos en mémoire partagée, qui seront utilisées par une autre appli A2.
Donc pour ça j'ai fait une classe CSharedMemory. Pas de pb.
Dans cette appli A1, je sais donc que je dois utiliser un objet "global" CSharedMemory, et aprés avoir utilisé "extern" que je trouvais un peu pourri, et en voyant l'exeple de la faq sur le Singleton, je me suis dit pourquoi pas l'utiliser.
Est-ce correct ?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
class CGlobal
{
private :
CSharedMemory sm;
//Constructeur privé
CGlobal() :
sm(1000, "SM_TDELTA") {
}
public :
//Fonction static pour appeler notre seul objet CSharedMemory
static CSharedMemory& GetSharedMemory();
};
CSharedMemory& CGlobal::GetSharedMemory()
{
static CGlobal glob;
return glob.sm;
} |
Je compte utliiser cette classe CGlobal pour y mettre d'autres objets utilisés encore auourd'hui en "extern"
Merci par avance.
@+