相关疑难解决方法(0)

C++ volatile成员函数

class MyClass
{
    int x, y;
    void foo() volatile {
        // do stuff with x
        // do stuff with y
    }   
};
Run Code Online (Sandbox Code Playgroud)

我是否需要声明x并将其y视为volatile或将成为volatile自动处理的所有成员变量?

我想确保"stuff with x"不会y被编译器的"stuff with " 重新排序.

编辑:如果我将正常类型转换为volatile类型会发生什么?这是否会指示编译器不重新排序对该位置的访问?我想在特殊情况下将一个普通变量传递给一个参数是volatile的函数.我必须确保编译器不会使用先前或后续的读写重新排序该调用.

c++ volatile member-functions

39
推荐指数
3
解决办法
2万
查看次数

21
推荐指数
2
解决办法
8002
查看次数

成员函数是不稳定的是什么意思?

我通常会看到const 用于表示const成员函数的说明符.但是当使用volatile关键字时它意味着什么?

void f() volatile {}
Run Code Online (Sandbox Code Playgroud)

这对我来说很好,但我不明白这是什么.我在搜索中找不到任何关于此的信息,所以任何帮助都表示赞赏.

更新:为了说清楚,我知道它volatile是为了什么.我只是不知道在这种情况下它意味着什么.

c++

10
推荐指数
2
解决办法
6000
查看次数

标签 统计

c++ ×3

volatile ×2

member-functions ×1