我正在读一本关于 C的书。它提到了一个对我来说没有意义的概念。我所知道的是,编译器有时会通过删除它认为不会影响表达式的变量来优化代码。因此,如果我们为变量指定 volatile,它不会从任何表达式中删除该变量。
所以这本书介绍了这样的东西:
volatile const int a = 1;
Run Code Online (Sandbox Code Playgroud)
解释只有几行,对我来说没有任何意义。有人可以解释一下为什么需要这样的变量吗?
PS:我理解volatile的概念,我不理解的是volatile const的概念。
volatile const变量是其值可能因外部影响而改变且无法写入的变量。