原文:【转】C++智能指针的正确使用方式

对象所有权 首先需要理清楚的概念就是对象所有权的概念。所有权在 rust 语言中非常严格,写 rust 的时候必须要清楚自己创建的每个对象的所有权。 但是 C 比较自由,似乎我们不需要明白对象的所有权,写的代码也能正常运行。但是明白了对象所有权,我们才可以正确管理好对象生命周期和内存问题。 C 引入了智能指针,也是为了更好的描述对象所有权,简化内存管理,从而大大减少我们 C 内存管理方面的犯错机会 ...

2020-10-28 20:27 0 396 推荐指数:

查看详情

C++智能指针

C++智能指针 来源 https://zhuanlan.zhihu.com/p/30933682 参考 https://www.zhihu.com/question/319277442/answer/1094961099 ======================== 智能指针只能代替T ...

Mon Apr 20 06:36:00 CST 2020 0 758
C++智能指针

C++智能指针 C++ 11 新特性 智能指针(shared_ptr, unique_ptr, weak_ptr) shared_ptr shared_ptr基本用法 shared_ptr采用引用计数的方式管理所指向的对象。当有一个新的shared_ptr指向同一个对象时(复制 ...

Wed Feb 07 23:55:00 CST 2018 0 12159
C++ TR1 智能指针shared_ptr的使用

c++ 98 里面只有一种智能指针,就是 std::auto_ptr,因为具有唯一所有权的特征,所以限制了它的使用范围,比如你无法在容器中使用它。而我们知道 stl 容器是值语义的,如果不能用智能指针管理的话,只有两种办法来使用。 一种是类似这样: std ...

Mon Jul 23 18:20:00 CST 2012 0 3516
c/c++ 智能指针 weak_ptr 使用

智能指针 weak_ptr 使用 weak_ptr用途: 1,解决空悬指针问题 2,解决循环引用问题 weak_ptr特点:没有*操作和->操作 weak_ptr是不控制所指对象生存周期的智能指针,它指向由一个shared_ptr管理的对象。将一个weak_ptr绑定到一个 ...

Sat Sep 29 16:06:00 CST 2018 0 1287
c/c++ 智能指针 unique_ptr 使用

智能指针 unique_ptr 使用 和shared_ptr不同,可以有多个shared_ptr指向同一个内存,只能有1个unique_ptr指向某个内存。因此unique_ptr不支持普通的拷贝和赋值。 一,先来个表格,唠唠unique_ptr 操作 功能 ...

Fri Sep 28 16:24:00 CST 2018 0 843
c/c++ 智能指针 shared_ptr 使用

智能指针 shared_ptr 使用 上一篇智能指针是啥玩意,介绍了什么是智能指针。 这一篇简单说说如何使用智能指针。 一,智能指针分3类:今天只唠唠shared_ptr shared_ptr unique_ptr weak_ptr 二,下表是shared_ptr ...

Thu Sep 27 16:31:00 CST 2018 0 1152
[]c++智能指针 auto_ptr(已废弃 不使用

[自 https://www.cnblogs.com/diysoul/p/5930341.html] auto_ptr 是一个轻量级的智能指针, 定义于 memory (非memory.h)中, 命名空间为 std. auto_ptr 适合用来管理生命周期比较短或者不会被远距离传递的动态对象 ...

Sat Nov 03 23:15:00 CST 2018 0 2792
c/c++ 数组的智能指针 使用

数组的智能指针 使用 数组的智能指针的限制: 1,unique_ptr的数组智能指针,没有*和->操作,但支持下标操作[] 2,shared_ptr的数组智能指针,有*和->操作,但不支持下标操作[],只能通过get()去访问数组的元素。 3,shared_ptr的数组智能指针 ...

Sun Sep 30 04:15:00 CST 2018 0 2561
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM