智能指针
💡
原文英文,约200词,阅读约需1分钟。
📝
内容提要
智能指针是C++11引入的,定义在<memory>中,包括unique_ptr、shared_ptr和weak_ptr。unique_ptr拥有原始指针,不允许复制,但支持std::move转移所有权;shared_ptr实现引用计数,可以复制,只有在所有shared_ptr被销毁后,引用的对象才会被销毁;weak_ptr是shared_ptr的副本,不影响shared_ptr,所有shared_ptr销毁后,weak_ptr变为空。
🎯
关键要点
- 智能指针是C++11引入的,定义在<memory>中。
- unique_ptr是一个拥有原始指针的容器,不允许复制,但支持std::move转移所有权。
- shared_ptr实现引用计数,可以复制,只有在所有shared_ptr被销毁后,引用的对象才会被销毁。
- weak_ptr是shared_ptr的副本,不影响shared_ptr,所有shared_ptr销毁后,weak_ptr变为空。
🏷️
标签
➡️