tags:
- Cpp
Volatile Specifier in C++ (Questioning)
volatile
的作用到底是什么?我知道 volatile
声明的变量不会被编译器优化到寄存器中去。意思说用 volatile
声明的变量只能从内存中取,然后放到内存中。然后使用 volatile
会 back-off 编译器的优化。C++ 经常把 const
和 volatile
称为 CV qualifier。
硬件开发的程序中,经常会出现 volatile
这个修饰符,网上给出的解释是告诉编译器该变量可能会在程序外被改变,因此不应该对变量进行优化?理解不了。