非成员函数的目的,如atomic_store()

时间:2017-05-31 15:24:09

标签: c++ c++11 atomic lock-free

我阅读了atomic_store的文档,我理解它在做什么。问题是为什么这个非会员职能呢?它提供什么成员功能不具备什么?我的意思是std::atomic的成员函数,如std::atomic::store()

还有很多这样的函数here

1 个答案:

答案 0 :(得分:1)

自由函数的目的是为C和C ++中的原子提供相同的接口。原子是在C和C ++委员会之间并行开发的,这就是它们如此相似的原因(< g>)。由实现者来完成这项工作,但如果你开始考虑兼容性,这并不难。结果是你可以在C和C ++中编写相同的代码,如果这是你想要的,你可以利用C ++中的成员函数来有时会获得简单而强大的操作。