为什么我们在 C++ 中使用 volatile 修饰符?


volatile 有两个含义 -

  • 变量的值在没有您的代码修改的情况下都可能会发生变化。因此,无论何时编译器读取变量的值,它都不认为该值与上次读取的值相同,也不认为该值与上次存储的值相同,而必须重新读取它。

  • 将值存储到 volatile 变量中的行为是一个可以从外部观察到的“副作用”,因此编译器不允许删除存储值的行为;例如,如果将两个值按行存储,那么编译器实际上必须将该值存储两次。

比如

i = 2;
i = i;

编译器必须存储数字 2,读取变量 I,将读取到的变量存储到 i 中。

您可以在此处找到有关 volatile 关键字的更多详细信息:www.geeksforgeeks.org/understanding-volatile-qualifier-in-c/

更新于: 30-Jul-2019

391 人浏览

开启您的 职业生涯

通过完成课程获得认证

开始
广告