码迷,mamicode.com
首页 >  
搜索关键字:share_ptr    ( 23个结果
C++11的enable_shared_from_this
c++11 中的 shared_from_this() 来源于 boost 中的 enable_shared_form_this 类和 shared_from_this() 函数,功能为返回一个当前类的 std::share_ptr,使用方法如下: #include<memory> class Te ...
分类:编程语言   时间:2021-04-26 13:06:17    阅读次数:0
探究share_ptr的底层实现(原创)
探究share_ptr的底层实现 本人大二菜鸡, 源码看不懂的地方会查资料, 应该大部分人都看得懂 最重要的地方在最后面 首先我们写 class A { } int main() { std::cout shared_ptr a; } 然后ctrl+click进入shared_ptr 是长这样的 展 ...
分类:其他好文   时间:2020-05-10 15:01:22    阅读次数:54
C++智能指针简单实现
share_ptr 简单实现: #include <iostream> using namespace std; template<class T> class SmartPtr { public: SmartPtr(T* ori_ptr); ~SmartPtr(); SmartPtr(SmartP ...
分类:编程语言   时间:2020-04-04 13:10:44    阅读次数:69
智能指针weak_ptr记录
智能指针weak_ptr为弱共享指针,实际上是share_ptr的辅助指针,不具备指针的功能。主要是为了协助 shared_ptr 工作,可用来观测资源的使用情况。weak_ptr 只对 shared_ptr 进行引用,而不改变其引用计数,当被观察的 shared_ptr 失效后,相应的 weak_ ...
分类:其他好文   时间:2019-12-23 13:41:27    阅读次数:399
记一两件小事
小事1:关于share_ptr 编译出现错误: 错误的意思大概就是, 我在loadPCDFile函数输入的是ptr指针类型,但是我明明传的是值类型啊!百思不得其解,大概花了将近半个小时在怀疑人生,然后对着官方文档的代码,一句一句的对照,终于知道了我少了一个new。 应该是这样的: 小事2:关于if语 ...
分类:其他好文   时间:2018-12-07 21:13:40    阅读次数:199
unique_ptr的实现原理
在C++11中有两个智能指针类型来管理动态对象,share_ptr允许多个指针指向同一个对象,unique_ptr则“独占”所指对象。 我们知道指针或引用在离开作用域时是不会进行析构的,但是类在离开作用域时会自动执行析构函数,所以我们可以用一个类来实现指针指针(unique_ptr本质上是一个类,只 ...
分类:其他好文   时间:2018-12-03 13:59:29    阅读次数:808
enable_shared_from_this
enable_shared_from_this是一个模板类,定义于头文件<memory> share_from_this()是返回指向该对象的share_ptr。 例子 1 #include <memory> 2 #include <iostream> 3 4 struct Good : std:: ...
分类:其他好文   时间:2018-06-22 13:13:48    阅读次数:130
share_ptr_c++11
C++智能指针 shared_ptr shared_ptr 是一个标准的共享所有权的智能指针, 允许多个指针指向同一个对象. 定义在 memory 文件中(非memory.h), 命名空间为 std. std::shared_ptr<int> sp1 = std::make_shared<int>( ...
分类:编程语言   时间:2018-05-18 13:44:13    阅读次数:148
智能指针之 shared_ptr
std::shared_ptr 是通过指针保持对象共享所有权的智能指针。多个 shared_ptr 对象可占有同一对象大概实现了一下,主要实现原理为,共享指针内部持有堆资源的指针以及引用计数的指针,通过对这两个指针的维护,达到多个共享对象对同一资源的控制 实现主要分为三个文件。share_ptr.h ...
分类:其他好文   时间:2018-05-13 01:08:37    阅读次数:168
Boost 应用注意事项
1shared_ptr不明确的符号boost的一些库,比如share_ptr已经被高版本的stl采纳了.如果你一块儿用编译器当然搞不清你要用那个了.我想你肯定写了这样的东西usingnamespacestd;usingnamespacetr1;usingnamespaceboost;实际上两个智能指针是一样的,你只需要用一个即可.如果你一定要两..
分类:其他好文   时间:2017-07-10 16:41:50    阅读次数:200
23条   1 2 3 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!