E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
shared_Ptr
706-建议用make_shared代替
shared_ptr
建议用make_shared代替
shared_ptr
我们看看
shared_ptr
我们先看下面的代码:对于sp1来说,它的内存布局如下:指向资源的指针指向资源引用计数的指针对于源码上的成员变量:我们看看
shared_ptr
-林泽宇
·
2021-10-18 12:06
C++的学习
c++
智能指针
C++11中的智能指针
shared_ptr
、weak_ptr源码解析
目录1、前言2、源码准备3、智能指针概念4、源码解析4.1、
shared_ptr
解析4.1.1、shared_ptr4.1.2、__shared_ptr4.1.3、__shared_count4.1.4
·
2021-09-26 16:35
深入学习C++智能指针之
shared_ptr
与右值引用的方法
目录1.介绍2.初始化方法2.1通过构造函数初始化2.2通过拷贝和移动构造函数初始化2.3通过std::make_shared初始化2.4通过reset方法初始化3.获取原始指针4.指定删除器5.参考链接1.介绍在C++中没有垃圾回收机制,必须自己释放分配的内存,否则就会造成内存泄露。解决这个问题最有效的方法是使用智能指针(smartpointer)。智能指针是存储指向动态分配(堆)对象指针的类,
·
2021-09-10 18:36
一文掌握 C++ 智能指针的使用方法
目录一、RAII与引用计数二、std::
shared_ptr
三、std::unique_ptr四、std::weak_ptr五、总结一、RAII与引用计数了解Objective-C/Swift的程序员应该知道引用计数的概念
·
2021-09-10 18:03
融会贯通C++智能指针教程
基础知识介绍裸指针常出现以下几个问题:二、不带引用计数的智能指针不带引用计数的智能指针主要包括(1)auto_ptr源码(2)scoped_ptr(3)unique_ptr源码三、带引用计数的智能指针四、
shared_ptr
·
2021-08-31 15:27
C++11智能指针unique_ptr用法使用场景分析
一、概述C++标准模板库STL(StandardTemplateLibrary)一共给我们提供了四种智能指针:auto_ptr、unique_ptr、
shared_ptr
和weak_ptr,其中auto_ptr
·
2021-08-24 13:51
一篇文章带你了解C++智能指针详解
智能指针的使用及原理RALLshared_ptr的使用注意事项创建多个
shared_ptr
不能拥有同一个对象
shared_ptr
的销毁
shared_ptr
的线程安全问题
shared_ptr
的循环引用unique_ptr
·
2021-08-13 13:22
一文掌握C++ 智能指针全部用法
目录一、为什么要使用智能指针二、auto_ptr三、unique_ptr四、
shared_ptr
五、weak_ptr六、智能指针的使用陷阱七、总结为什么要学习智能指针?
·
2021-08-04 13:11
C++ STL 四种智能指针的用法详解
weak_ptr4.1简介4.2用法4.3作用5.如何选择智能指针0.前言C++标准模板库STL(StandardTemplateLibrary)一共给我们提供了四种智能指针:auto_ptr、unique_ptr、
shared_ptr
·
2021-07-30 12:10
关于
shared_ptr
智能指针的简单理解
关于
shared_ptr
智能指针的简单理解什么是智能指针使用智能指针的优点
shared_ptr
的源码分析(超简化版)对
shared_ptr
智能指针的简单使用初始化`
shared_ptr
`通过`
shared_ptr
燕子坞方火火
·
2021-07-18 16:23
C++11
c++
C++智能指针(Smart Pointer)
从C++11开始,智能指针进入标准库,std::unique_ptr,std::
shared_ptr
和std::weak_ptr。那:1,什么是智能指针?2,为什么要用智能指针?
LabVIEW_Python
·
2021-06-20 17:30
关于智能指针的一些使用 auto_ptr
shared_ptr
unique_ptr
//创建智能指针时必须提供额外的信息,指针可以指向的类型:shared_ptrp;
shared_ptr
>a;/*最安全的分配和使用动态内存的方法就是调用一个名为ma
前面是不断后退的路
·
2021-05-20 00:12
C++
指针
c++
智能指针
常用的智能指针有3种,它们是auto_ptr、unique_ptr和
shared_ptr
,在使用它们之前一定要添加memory头文件,如下图所示:它们的用法如下:这
Stroman
·
2021-05-17 14:47
Caffe 架构学习-底层数据1
前言
shared_ptr
智能指针为了解决C++内存泄漏的问题,C++11引入了智能指针(SmartPointer)。
Zz鱼丸
·
2021-05-15 17:53
C++智能指针
shared_ptr
、weak_ptr源码解析
C++智能指针
shared_ptr
、weak_ptr源码解析1、前言2、源码准备3、智能指针概念4、源码解析4.1、
shared_ptr
解析4.1.1、shared_ptr4.1.2、__shared_ptr4.1.3
彼方丶
·
2021-05-08 22:02
C++标准库源码深究
c++
指针
c++11
内存管理
编程语言
C++
shared_ptr
四宗罪(不得不转)
本文版权归liancheng所有,如有转载请按如下方式标明原创作者及出处,以示尊重!!原创作者:liancheng原文出处:http://blog.liancheng.info/?p=85问题描述在基于C++的大型系统的设计实现中,由于缺乏语言级别的GC支持,资源生存周期往往是一个棘手的问题。系统地解决这个问题的方法无非两种:使用GC库使用引用计数严格地说,引用计数其实也是一种最朴素的GC。相对于
周肃
·
2021-05-04 09:29
条款13 以类管理对象
两个常被使用的RAIIclasses分别是tr1::
shared_ptr
和auto_ptr。前者通常是较佳选择,因为copy行为比较直观。若选择auto_ptr,复制动作会使它(原指针)指向null。
Songger
·
2021-04-24 08:54
Effective C++ Notes 4. 设计与声明
(4)tr1::
shared_ptr
支持定制型删除器(customdeleter)。这可
Gargadac
·
2021-04-19 00:42
C/C++
C++ 智能指针
C++智能指针C++11中智能指针的原理、使用、实现转
shared_ptr
的小文,
shared_ptr
赋值为a,再赋值为b,a的引用会减1,b的引用加1
菜鸟瞎编
·
2021-03-18 22:29
c++11智能指针(三)weak_ptr
弱引用指针weak_ptr是用来监视
shared_ptr
的,不会使引用计数加1或减1.它作为一个旁观者来监视
shared_ptr
管理的资源是否存在,也可以用来返回this指针或解决循环引用问题。
_gentle
·
2021-03-11 16:27
2022届字节跳动搜索算法实习生面经
Linux内存管理(不了解),TCP三次握手,降维的方法,统计学习LR的公式算法题:用两个栈实现队列的功能概率题:圆上任取三个点,组成锐角三角形的概率1.智能指针share_ptr和weak_ptr的区别:
shared_ptr
Jiaxi_Cao
·
2021-02-19 23:49
算法
数据结构
c++
《More Effective C++》总结笔记(二)——异常
异常条款9:利用destructors避免泄露资源只要坚持这个规则,把资源封装在对象内(类似智能指针
shared_ptr
),通常便可以在exceptions出现时避免泄露资源。
·
2021-02-15 13:18
c++异常处理
智能指针:什么是
shared_ptr
类和weak_ptr类
我们从之前对于auto_ptr和unique_ptr介绍可以的知:已经消失的智能指针——auto_ptr:https://blog.csdn.net/qq_46423166/article/details/113764347C++智能指针——unique_ptr:https://blog.csdn.net/qq_46423166/article/details/113777696auto_ptr有
双鱼座boyy
·
2021-02-13 00:35
C/C++学习
指针
内存管理
《More Effective C++》总结笔记(二)——异常
异常条款9:利用destructors避免泄露资源只要坚持这个规则,把资源封装在对象内(类似智能指针
shared_ptr
),通常便可以在exceptions出现时避免泄露资源。
·
2021-02-05 21:15
c++异常处理
c++11 新特性——智能指针使用详解
c++11添加了新的智能指针,unique_ptr、
shared_ptr
和weak_ptr,同时也将auto_ptr置为废弃(deprecated)。
·
2021-02-05 11:59
《Linux多线程服务端编程:使用muduoC++网络库》学习笔记
文章目录第1章线程安全的对象生命期管理1.1当析构函数遇到多线程1.1.1线程安全的定义1.1.3线程安全实例1.2对象的创建很简单1.3销毁很难1.4线程安全的Observer有多难1.6神器
shared_ptr
Owl丶
·
2021-02-02 21:34
C++
计算机网络
读书笔记
c++
linux
服务器
第九课.指针(四)
可能造成内存泄漏事故,但指针是高效的,所以需要一种更安全的方式使用指针,一般有两种方案:使用更安全的指针:智能指针;不使用指针,使用更安全的方式:引用;C++中有四种常用的智能指针:unique_ptr,
shared_ptr
tzc_fly
·
2021-01-28 16:48
白景屹C++学习记录
指针
内存管理
内存泄漏
c++
error C3867: “XXX::XXX”: 非标准语法;请使用 “&“ 来创建指向成员的指针。
Mystack(constintsize){p=
shared_ptr
(newT[size]);top=-1;Size=&size;};boolpush(T&t){if(top<(size-1)){**这儿的
小丑快学习
·
2021-01-20 18:40
C++错误
c++
C++使用
shared_ptr
和可变参数实现无内存泄漏的单例
技术原理:私有化构造函数,析构函数,拷贝构造函数和赋值操作符,不让外部构造,并将默认函数实现设置为delete使用std::
shared_ptr
管理单例内存,避免内存泄漏使用可变参数模板构造任意对象代码如下
FredricZhu
·
2020-12-29 17:49
如何选择智能指针?
如果有多个指针指向同一对象的话,你应该使用
shared_ptr
;如果一个对象只需要一个智能指针,那你应该是用unique_ptr。
Stroman
·
2020-10-09 16:31
C++11
shared_ptr
共享智能指针
前言std::
shared_ptr
使用引用计数,每一个
shared_ptr
的拷贝都指向相同的内存。在最后一个
shared_ptr
析构的时候,内存才会释放。
m_buddy
·
2020-09-17 07:14
[2]
C++
STL
C++11
shared_ptr
详解
C++11模板库的头文件中定义的智能指针,即
shared_ptr
模板,就是用来部分解决这个问题的。
键盘小王子
·
2020-09-17 06:51
c++
指针
c++
内存管理
多态
【C++11新特性】 C++11智能指针之unique_ptr
原创作品,转载请标明:http://blog.csdn.net/Xiejingfa/article/details/50759210在前面一篇文章中,我们了解了C++11中引入的智能指针之一
shared_ptr
Fred^_^
·
2020-09-17 06:46
C++拾遗
【C++11新特性】 C++11智能指针之
shared_ptr
在新标准中,主要提供了
shared_ptr
、unique_ptr、weak_ptr三种不同类型的智能指针。接下来的几篇文章
Endless丶Go
·
2020-09-17 06:10
转载的博客
C++
Effective C++学习笔记(三)
条款13用对象来管理资源为防止资源泄露,使用资源管理对象来构造资源和析构资源,最好在获取资源的同时进行初始化(RAII)最常见的资源管理对象为智能指针,std::auto_ptr与std::
shared_ptr
_Maple_H
·
2020-09-16 22:43
C++学习
error: ‘std::
shared_ptr
’ has not been declared
ubuntu16.04环境下,编译C++代码出错解决方法:#include
半斤蜜桃
·
2020-09-16 21:57
C++
caffe 自定义层/添加自己的损失函数
自定义激活层文献[2]以循序渐进的学习方式先后介绍了:googleprotocolbuffe,Blob,SyncedMemory,
shared_ptr
,layer,datalayer然后利用这些知识来自定义一个层
机器学习的小学生
·
2020-09-16 19:29
Caffe
深度学习\deep
learning
360面试准备
std::unique_ptrp2=p1;//编译会出错std::unique_ptrp3=std::move(p1);//转移所有权,现在那块内存归p3所有,p1成为无效的指针.C++11或boost的
shared_ptr
damotiansheng
·
2020-09-16 18:09
笔试/面试
《Muduo C++网络库学习一》以Observer模式谈线程安全问题
如何避免对象析构时存在的竞争条件(racecondition)是C++多线程编程面临的基本问题,正确的答案是Boost库中的
shared_ptr
L.Jeremy
·
2020-09-16 15:01
Linux
智能指针std::auto_ptr和tr1:
shared_ptr
用法
下面通过一个工厂函数(createInvestment())返回一个特定的investment对象:Investment*createInvestment();见如下函数:voidf(){Investment*pInv=createInvestment();....deletepInv;}上面的程序会有以下危险:1>...区域内的一个过早的return语句,控制流将不会触及delete语句2>或c
alibo2008
·
2020-09-16 14:57
c/c++
C++ 智能指针shared-ptr,unique_ptr和weak-ptr
shared_ptr
类智能指针也是模板。所以创建智能指针时要提供其指向的指针类型:shared_ptrp1;//指向stringshared_ptr>p2//指向int的list,在C++11中>中的
yhcfly
·
2020-09-16 06:11
C/C++内存管理
C++11
C++ boost智能指针weak_ptr
weak_ptr:weak_ptr是为了配合
shared_ptr
而引入的一种智能指针,它更像是
shared_ptr
的一个助手而不是智能指针,因为它不具有普通指针的行为,没有重载operator*和->,
Rain-晴天
·
2020-09-16 06:59
c++智能指针 unique_ptr,
shared_ptr
,weak_ptr
c++中使用new在堆上创建的对象,必须使用delete进行销毁,否则就会内存泄漏。有时候你会不经意间忘记了delete。就算你没有忘记delete,而程序在delete之前出现异常,那就会造成delete语句没有执行。如下:int*pi=newint(10);//doSomethingdeletepi;如果doSomething出现了异常,就会造成deletepi不能执行,从而造成内存泄露。所以
褚金辉
·
2020-09-16 05:33
boost
C++11智能指针
shared_ptr
,unique_ptr和weak_ptr的理解
简要描述
shared_ptr
允许多个指针指向同一个对象unique_ptr独占所指向的对象weak_ptrshared_ptr的弱引用
shared_ptr
描述(inmemory):
shared_ptr
是一个标准的共享所有权的智能指针
gcc2018
·
2020-09-16 05:20
[内存管理]智能指针的好帮手weak_ptr
weak_ptr是为配合
shared_ptr
而引入的一种智能指针,它更像是
shared_ptr
的一个助手,而不是智能指针,因为它不具有普通指针的行为,没有重载operator*和operator->,它的最大作用在于协助
ajioy
·
2020-09-16 05:24
MFC/STL/Boost
C++11之智能指针
shared_ptr
/unique_ptr/weak_ptr
shared_ptr
我们可以认为每个
shared_ptr
都有一个关联的计数器,通常称其为引用计数,无论何时我们拷贝一个
shared_ptr
,计数器都会递增。
你的游戏我的妃
·
2020-09-16 05:25
C/C++
C++ 智能指针auto_ptr、unique_ptr、
shared_ptr
、weak_ptr
转自:https://www.nowcoder.com/tutorial/93/a34ed23d58b84da3a707c70371f59c21智能指针的作用是管理一个指针,因为存在以下这种情况:申请的空间在函数结束时忘记释放,造成内存泄漏。使用智能指针可以很大程度上的避免这个问题,因为智能指针就是一个类,当超出了类的作用域是,类会自动调用析构函数,析构函数会自动释放资源。所以智能指针的作用原理就
chomol
·
2020-09-16 05:25
个人mark
C++
关于智能指针析构函数原理随笔(不能析构动态数组)
总所周知,在std中有着auto_ptr和
shared_ptr
,其中auto_ptr是只允许被一个指针所使用,即“受auto_ptrs管理的资源必须绝对没有一个以上的auto_ptr同时指向它”,也就是无论是拷贝构造或者赋值时都会让原来的指针为
昨夜的秋天
·
2020-09-16 02:47
C++随笔
shared_ptr
与weak_ptr(解决循环引用)
原创:https://blog.csdn.net/ingvar08/article/details/79200424shared_ptr是带引用计数的智能指针,可以说大部分的情形选择用
shared_ptr
znzxc
·
2020-09-16 00:12
c++
shared_ptr
做资源删除器
=NULL){cout(newdialog_t,deleter_t{});p->fun();}getchar();return0;}利用
shared_ptr
管理资源高级用法voidany_func(void
Derek_0101
·
2020-09-16 00:11
C++
上一页
9
10
11
12
13
14
15
16
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他