Selon cppreference , la plupart des utilisations du volatile
mot-clé doivent être dépréciées en C ++ 20. Quel est l'inconvénient de volatile
? Et quelle est la solution alternative lorsque vous ne l'utilisez pas volatile
?
17
Selon cppreference , la plupart des utilisations du volatile
mot-clé doivent être dépréciées en C ++ 20. Quel est l'inconvénient de volatile
? Et quelle est la solution alternative lorsque vous ne l'utilisez pas volatile
?
volatile
qui ne sont PAS obsolètes, car elles sont utiles (par exemple, dans du code qui se charge ou se stocke directement à partir d'emplacements de mémoire spécifiés, comme dans les pilotes de périphérique). Un certain nombre des "utilisations déconseillées" sont liées à la capacité d'utiliser des fonctionnalités que trop de progammeurs utilisent - incorrectement - comme moyen de rendre atomique un accès variable . La bibliothèque C ++ maintenant (depuis C ++ 11) fournit un moyen correct d'assurer l'accès atomique aux variables, il est donc logique de décourager les programmeurs d'utiliser incorrectementvolatile
lorsque l'intention est l'accès atomique.Réponses:
Il y a une bonne discussion par le président de l'évolution du langage du comité c ++ sur pourquoi.
Bref résumé, bon nombre des endroits qui
volatile
sont retirés n'avaient aucune signification compréhensible et causaient simplement de la confusion.la source