Le Singleton

Intro :

Le Singleton est un patron de conception.

Il est utile lorsque l’on a besoin d’utiliser et d’instancier un seul objet au lieu le passer paramètre après paramètre et fonction par fonction.

En somme il permet d’accéder directement dans tout le programme un objet quelconque (appelé « Singleton »).

Explications / exemples :

Cas sans le Singleton :

Cas avec le Singleton :

On accède directement à l’objet sans avoir à le passer paramètre par paramètre :

Donc  :


Voici le fichier d’en-tête / d’include :

 

Utilisation :

Dans le fichier include : EventManager.h

Dans le fichier cpp : EventManager.cpp

on doit mettre tout en haut de ce fichier :


Exemple d’utilisation :

Astuces et conseils :

warning

1 – N’oubliez surtout pas de créer votre objet avant son utilisation en appelant :

sinon vous obtiendrez un bug de pointeur non initialisé ! (segfault)

2 – Utiliser plusieurs macro #define de la sorte :

on utilise cette macro / raccourcis pour appeler une méthode : EVENT_MANAGER->methode()
cela permet de simplifier l’écriture du code…

Résumé :

Le patron de conception Singleton restreint l’instanciation d’une classe à un seul objet.
Il permet de simplifier l’accès global à un objet (par exemple à une classe TextureManager ou EventManager)