小编ExB*_*Ben的帖子

使用Xcode 8.2.1的未定义参考___atomic_is_lock_free

我在Mac上运行这样的代码:

    #include <atomic>
    #include <iostream>
    #include <utility>
    #include <atomic>

    struct A { int a[100]; };
    struct B { int x, y; };
    int main()
    {
        std::cout << std::boolalpha
        << "std::atomic<A> is lock free? "
        << std::atomic<A>{}.is_lock_free() << '\n'
        << "std::atomic<B> is lock free? "
        << std::atomic<B>{}.is_lock_free() << '\n';
    }
Run Code Online (Sandbox Code Playgroud)

错误消息是:体系结构x86_64的未定义符号:“ ___ atomic_is_lock_free”,引用自:testassembly.o中的_main参见调用)

is_lock_free是c ++标准库的一部分,对我来说似乎很奇怪。您对此有什么想法吗?

c++ xcode stdatomic

5
推荐指数
0
解决办法
173
查看次数

const std :: unique_ptr管理的对象的生命周期

我看到下面的注释中std::unique_ptr引用:

只有非const unique_ptr才能将托管对象的所有权转移给另一个unique_ptr.const管理的对象的生命周期std::unique_ptr仅限于创建指针的范围.

有没有人可以用一个例子来解释它?我无法弄明白为什么.

c++ unique-ptr c++11

4
推荐指数
1
解决办法
1420
查看次数

标签 统计

c++ ×2

c++11 ×1

stdatomic ×1

unique-ptr ×1

xcode ×1