gpt4 book ai didi

c++ - 为什么自由函数和成员函数都存在用于比较和交换操作?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:29:53 25 4
gpt4 key购买 nike

C++ 标准库同时具有 free functionsmember functions用于原子比较和交换操作。

free functions 所述:

These functions are defined in terms of member functions of std::atomic:

  1. obj->compare_exchange_weak(*expected, desired)
  2. obj->compare_exchange_strong(*expected, desired)
  3. obj->compare_exchange_weak(*expected, desired, succ, fail)
  4. obj->compare_exchange_strong(*expected, desired, succ, fail)

有免费功能的原因是什么?只有成员函数还不够吗?他们不做同样的事情吗?

最佳答案

与 C stdatomic.h 操作一致。

如果您使用自由函数,相同的原子操作代码将在 C 和 C++ 中工作,只需要有条件地定义一个 typedef。

关于c++ - 为什么自由函数和成员函数都存在用于比较和交换操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48368398/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com