相关疑难解决方法(0)

C/C++:抛弃挥发性被认为有害吗?

(与这个问题有关,抛弃挥发物是否安全?,但不完全相同,因为该问题与特定实例有关)

是否有过在那里虚掷的情况下volatile被认为是危险的做法?

(一个特定的例子:如果声明了一个函数

void foo(long *pl);
Run Code Online (Sandbox Code Playgroud)

我必须实施

void bar(volatile long *pl);
Run Code Online (Sandbox Code Playgroud)

有()我需要执行栏的一部分来调用foo(PL),然后好像我不能得到这个作为是工作,因为假设由foo的编制()和bar的调用者的编辑制作()不兼容.)


作为推论,如果我有一个volatile变量v,我想打电话给foo(&v)别人的功能void foo(long *pl),那人告诉我这是安全的,我可以调用之前投的指针,我的直觉是要告诉他们,他们错了,因为没有办法保证,void foo(volatile long *pl)如果他们想支持使用volatile变量,他们应该更改声明.我们哪一个是正确的?

c c++ volatile

12
推荐指数
3
解决办法
5426
查看次数

标签 统计

c ×1

c++ ×1

volatile ×1