c++智能指针的使用,shared

您所在的位置:网站首页 c++智能指针shared_ptr c++智能指针的使用,shared

c++智能指针的使用,shared

#c++智能指针的使用,shared| 来源: 网络整理| 查看: 265

大佬教程收集整理的这篇文章主要介绍了c++智能指针的使用,shared_ptr,unique_ptr,weak_ptr,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。 c++智能指针的使用

官方参考

普通指针的烦恼:内存泄漏,多次释放,提前释放

智能指针 负责自动释放所指向的对象。

三种智能指针 shared_ptr,unique_ptr,weak_ptr;

将shared_ptr存放在一个容器中,不再需要它的时候,要erase掉。

allocator负责封装堆内存管理的对象,它们在整个标准库中使用,特别是STL容器使用它们来管理容器内部的所有内存分配,大部份情况下,程序员不用理会,标准容器使用默认的分配器称为std :: allocator。

shared_ptr

shared_ptr

多个指针指向相同的对象;

使用引用计数,引用计数是线程安全的,但是对象的读写需要加锁。

不可以直接将指针直接赋值给一个智能指针,因为指针指针是一个类。

get获取原始指针

最大的陷阱就是循环引用,这会导致内存无法正确释放,导致内存泄漏

#include #include #include #include #include struct Base { Base() { std::cout


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3