【发布时间】:2015-01-26 16:43:13
【问题描述】:
我正在查看以下代码:
inline void* interlocked_read_acquire(void* volatile* x);
我想知道为什么不只是 volatile void* 作为参数。一般来说,volatile* 的语义或定义是什么?我还假设您可以将volatile* 限定符与除void 之外的任何其他类型一起使用。对吗?
【问题讨论】:
-
这似乎是有效的,但我不知道如何阅读它,所以这就是我问的原因。
-
我对投反对票的猜测是,有人只阅读了问题标题,并认为这是一个关于
void或volatile孤立含义的非研究性问题。 -
@vsoftco 这肯定是一个相当高的估计(无论如何在 c++ 标签之后的人中) -
volatile是众所周知的,简单指针声明的含义也是如此,所以即使这个特定的组合没有在解决之前没见过 -
@MattMcNabb 同意,也许我应该改变百分比,但是当你第一次碰到它时,有人问你“告诉我这到底是什么”,我敢打赌大多数人不会能够在 5 秒内做出反应。或者也许你可以,但是我必须首先提醒自己
volatile是什么意思,然后提醒自己多指针定义的东西。但无论如何,我不会拒绝这样的问题。
标签: c++ pointers volatile qualifiers