c++ - 当一个成员函数是 volatile 时,这意味着什么?

标签 c++

<分区>

我通常看到 const 说明符用于指示 const 成员函数。但是,当使用 volatile 关键字时,这意味着什么?

void f() volatile {}

这对我来说编译得很好,但我不明白这是干什么用的。我在搜索中找不到任何关于此的信息,因此非常感谢您的帮助。

更新:为了清楚起见,我知道 volatile 的用途。我只是不知道在这种情况下这意味着什么。

最佳答案

成员函数上的 volatile 限定符类似于 const 限定符。它允许在 volatile 对象上调用成员函数:

struct A {
    void f() volatile {}
    void g() {}
};

int main() {
    A volatile a;
    a.f(); // Allowed
    a.g(); // Doesn't compile
}

关于c++ - 当一个成员函数是 volatile 时,这意味着什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16746070/

相关文章:

c++ - 如何覆盖 std::atomic 类的默认析构函数

c++ - 如何在eclipse中导入VC++项目?

c++ - 在 C++ 中确定指针限制的惯用方法是什么?

c++ - 如何在顶级过滤器中获取 Win32 崩溃的字符串描述(我正在寻找堆栈顶部指令的地址)

c++ - 如何将枚举转换为 QString?

c++ - 如何使用 C++ 使用 VLC 播放器运行视频文件

c++ - cv::imread() 导致内存损坏

c++ - 32 位 int 类型的 Win API 互锁操作

c++ - 模板化隐式类型转换运算符

c++ - 使用 VC++ 2012 创建图形程序