我知道unique_ptrs不能复制只移动,他们没有引用计数.但我们可以有两个共享资源的智能指针:
Foo* f = new Foo;
auto p1 = std::unique_ptr<Foo>(f);
auto p2 = std::unique_ptr<Foo>(f);
Run Code Online (Sandbox Code Playgroud)
现在这两个类共享一个指针*f.此外,我知道这最终将导致UB,因为我们将进行双重删除但仍然:unique_ptr如果可能的话,我们真正意味着"独特"是什么意思?