【C++】unique_ptr

std::unique_ptr - cppreference.comicon-default.png?t=LA92https://zh.cppreference.com/w/cpp/memory/unique_ptrunique_ptr对象始终是关联的原始指针的唯一所有者。我们无法复制unique_ptr对象,它只能移动,所以叫 unique_ptr 。

unique_ptr 在智能指针变量赋值方面比 auto_ptr 安全,不允许赋值给另一个 unique_ptr。

unique_ptr<string> pu1(new string ("hello world")); 
unique_ptr<string> pu2; 
pu2 = pu1;    // 不允许
    
unique_ptr<string> pu3; 
pu3 = unique_ptr<string>(new string ("You"));    // 允许

参考这篇详细的博客:

C++ 智能指针 unique_ptr 详解与示例_彼此当年少,莫负好时光-CSDN博客_c++ unique_ptr在本文中,我们将讨论由C++11提供的智能指针std :: unique_ptr&amp;amp;amp;lt;&amp;amp;amp;gt;。unique_ptr &amp;amp;amp;lt;&amp;amp;amp;gt;是C++ 11提供的用于防止内存泄漏的智能指针中的一种实现。unique_ptr对象包装一个原始指针,并负责其生命周期。当该对象被销毁时,会在其析构函数中删除关联的原始指针。...https://blog.csdn.net/shaosunrise/article/details/85158249

猜你喜欢

转载自blog.csdn.net/xiaoyu_wu/article/details/122054755