Variables volatiles

Dans de très rares cas, une variable peut être modifiée sans que le programme le sache ; cela arrive par exemple avec une variable globale modifiée par une tâche de fond ou par une interruption système.

Dans ce cas, la variable doit être déclarée volatile, afin que le compilateur sache qu’il ne peut la conserver nulle part (surtout pas dans un registre), et qu’il ne peut faire certaines optimisations sur elle :

volatile int i;

Précisons aussi que les fonctions membres d’une classe peuvent être déclarées volatiles (voir chapitre 6 pour les classes) ; dans ce cas, une instance volatile de la classe ne pourra utiliser que les fonctions membres volatiles.

Précédent Précédent Sommaire Sommaire Suivant Suivant