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
weak_ptr
C++智能指针详解
目录一.unique_ptr独占指针特点创建方式传递方式简单使用隐藏危险二.shared_ptr计数指针特点传递方式隐藏危险三.
weak_ptr
优缺点:智能指针由原始指针的封装,优点是可以自动分配内存,
·
2022-08-18 09:09
详解C++ 中 shared_ptr
weak_ptr
目录shared_ptr1.类继承中使用shared_ptr2.castingshared_ptr3.make_shared使用weak_ptrshared_ptrshared_ptr是一个标准的共享所有权的智能指针,允许多个指针指向同一个对象,定义在memory文件中,命名空间为std。shared_ptr最初实现于Boost库中,后由C++11引入到C++STL。shared_ptr利用引用计
·
2022-07-23 13:15
C++中Boost的智能指针
weak_ptr
循环引用:引用计数是一种便利的内存管理机制,但它有一个很大的缺点,那就是不能管理循环引用的对象。一个简单的例子如下:#include#include#include#includeclassparent;classchildren;typedefboost::shared_ptrparent_ptr;typedefboost::shared_ptrchildren_ptr;classparent{
·
2022-07-05 10:15
C语言 智能指针 shared_ptr 和
weak_ptr
weak_ptr
引入可以解决shared_ptr交叉引用时无法释放资源的问题。
·
2022-04-11 19:07
C++11新特性总结
、概述C++11新特性包括auto、decltype、constexpr、右值引用、move()函数、完美转发、移动构造、lambda匿名函数、for循环新格式、nullptr、shared_ptr、
weak_ptr
梦想是优秀社畜
·
2022-03-24 07:54
C++
c++
C++ 为什么要使用
weak_ptr
及其使用场景
我们知道std::shared_ptr会共享对象的所有权,但是有一些场景如果有一个像std::shared_ptr但是又不参与资源所有权共享的指针是很方便的。换句话说,是一个类似std::shared_ptr但不影响对象引用计数的指针。不参与资源所有权就意味着不会对资源的生命周期产生影响,有利于对象之间的解耦。举个一个不太恰当的例子,A和B相互加了微信,假设我们用一个指针来指向自己的微信朋友,如果
雪*夹雨夹*雪
·
2022-03-23 07:10
C++
c++
开发语言
后端
C++智能指针
智能指针RAII智能指针①auto_ptr②unique_ptr③share_ptr循环引用④
weak_ptr
定制删除器RAIIRAII(ResourceAcquisitionIsInitialization
TZC⑥
·
2022-03-15 08:19
C++
c++
开发语言
visualstudio
C++Smart Pointer 智能指针详解
目录一、为啥使用智能指针呢二、shared_ptr智能指针三、unique_ptr智能指针四、
weak_ptr
智能指针五、智能指针怎么解决交叉引用,造成的内存泄漏5.1交叉引用的栗子:5.2解决方案六、
·
2022-03-14 12:03
智能指针-使用、避坑和实现
本文主要内容如下图所示:智能指针的由来auto_ptr为什么被废弃unique_ptr的使用、特点以及实现shared_ptr的使用、特点以及实现
weak_ptr
的使用、特点以及实现介绍笔者在工作中遇到的一些职能
高性能架构探索
·
2022-02-08 09:00
C++智能指针的使用和仿写(auto_ptr、unique_ptr、shared_ptr、
weak_ptr
)(详解)
本博客主要记录以下内容:1.auto_ptr(包括使用讲解和仿写)2.unique_ptr(包括使用讲解和仿写)3.shared_ptr(包括使用讲解和仿写)4.weak_ptr(包括使用讲解和仿写)一、auto_ptr1.auto_ptr的使用和讲解使用示例及讲解:intmain(){int*p=newint(10);//auto_ptra_ptr1=p;//不允许让普通指针为实参,进行隐式构造
孟小胖_H
·
2021-10-26 12:57
C++
c++
C语言智能指针之
weak_ptr
浅析
目录前言使用环境测试过程现象分析总结前言
weak_ptr
这个指针天生一副“小弟”的模样,也是在C++11的时候引入的标准库,它的出现完全是为了弥补它老大shared_ptr天生有缺陷的问题,其实相比于上一代的智能指针
·
2021-10-18 13:11
C++ 智能指针代码解析
目录前言1,aoto_ptr2,unique_ptr3,share_ptr4,
weak_ptr
总结前言如果在程序中使用new从堆分配内存,等到不再需要时,应使用delete将其释放,C++引入了智能指针
·
2021-10-18 13:39
C++11中的智能指针shared_ptr、
weak_ptr
源码解析
shared_ptr4.1.2、__shared_ptr4.1.3、__shared_count4.1.4、_Sp_counted_base4.1.5、_Sp_counted_ptr4.1.6、shared_ptr总结4.2、
weak_ptr
·
2021-09-26 16:35
一文掌握 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和
weak_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++ 智能指针全部用法
目录一、为什么要使用智能指针二、auto_ptr三、unique_ptr四、shared_ptr五、
weak_ptr
六、智能指针的使用陷阱七、总结为什么要学习智能指针?
·
2021-08-04 13:11
C++ STL 四种智能指针的用法详解
4.3作用5.如何选择智能指针0.前言C++标准模板库STL(StandardTemplateLibrary)一共给我们提供了四种智能指针:auto_ptr、unique_ptr、shared_ptr和
weak_ptr
·
2021-07-30 12:10
C++智能指针(Smart Pointer)
从C++11开始,智能指针进入标准库,std::unique_ptr,std::shared_ptr和std::
weak_ptr
。那:1,什么是智能指针?2,为什么要用智能指针?
LabVIEW_Python
·
2021-06-20 17:30
C++ 学习笔记8--移动语义和智能指针
关于实现String资源管理和智能指针一、C语言中的问题二、C++的解决办法(RAII技术)三、四种智能指针1、auto_ptr.cc2、unique_ptr3、shared_ptr3.1、循环引用4、
weak_ptr
谢白羽
·
2021-05-25 22:07
c++
指针
c++
内存管理
Caffe 架构学习-底层数据1
C++11提供了三种智能指针:std::shared_ptr,std::unique_ptr,std::
weak_ptr
,使用时需添加头文件。
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
内存管理
编程语言
语言经验
通过设置
weak_ptr
可以解决类之间使用s
Supreme_DJK
·
2021-04-25 02:56
★14.关于std--shared_ptr
循环引用循环引用问题classB;//前向声明classA{public://正确,不会增减引用计数,不造成智能指针循环引用,但是
weak_ptr
没有->和*,需要使用时必须先调用其lock函数返回一个
iDragonfly
·
2021-04-21 12:25
c++11智能指针(三)
weak_ptr
弱引用指针
weak_ptr
是用来监视shared_ptr的,不会使引用计数加1或减1.它作为一个旁观者来监视shared_ptr管理的资源是否存在,也可以用来返回this指针或解决循环引用问题。
_gentle
·
2021-03-11 16:27
2022届字节跳动搜索算法实习生面经
Java相关(不了解),Linux内存管理(不了解),TCP三次握手,降维的方法,统计学习LR的公式算法题:用两个栈实现队列的功能概率题:圆上任取三个点,组成锐角三角形的概率1.智能指针share_ptr和
weak_ptr
Jiaxi_Cao
·
2021-02-19 23:49
算法
数据结构
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++学习
指针
内存管理
c++11 新特性——智能指针使用详解
c++11添加了新的智能指针,unique_ptr、shared_ptr和
weak_ptr
,同时也将auto_ptr置为废弃(deprecated)。
·
2021-02-05 11:59
第九课.指针(四)
目录智能指针auto_ptr智能指针unique_ptrshared_ptr和
weak_ptr
引用使用指针是危险的行为,可能存在野指针问题,可能造成内存泄漏事故,但指针是高效的,所以需要一种更安全的方式使用指针
tzc_fly
·
2021-01-28 16:48
白景屹C++学习记录
指针
内存管理
内存泄漏
c++
2021届春招实习生字节跳动面经(已上岸)
2020.4.15投递客户端iOS开发岗位,无笔试2020.4.22技术一面聊项目指针和引用智能指针
weak_ptr
存在野指针的问题吗多态的实现虚函数的实现虚函数表,存放在哪里httphttps如何保证安全
北冥有鱼s
·
2021-01-13 16:21
面经
面试
ios
【C++11新特性】 C++11智能指针之shared_ptr
在新标准中,主要提供了shared_ptr、unique_ptr、
weak_ptr
三种不同类型的智能指针。接下来的几篇文章
Endless丶Go
·
2020-09-17 06:10
转载的博客
C++
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是一个标准的共享所有权的智能指针,就是允许多个指针指向同一对象,shared_ptr对象中不仅有一个指针指向某某(比如int型,以下也拿int类型举例)对象,还拥有一个引用计数器,代表一共有多少指针指
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,计数器都会递增。当我们给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++
shared_ptr与
weak_ptr
(解决循环引用)
那么
weak_ptr
是什么,应该怎么用呢?
weak_ptr
也是智能指针,但是比较弱,感觉没什么用。其实它的出现是伴随shared_ptr而来,尤其是解决了一个引用计数导致的问题:在存在
znzxc
·
2020-09-16 00:12
c++
shared_ptr使用
C++11提供了三种智能指针:std::shared_ptr,std::unique_ptr,std::
weak_ptr
,使用时需添
六月的雨唯你
·
2020-09-15 23:15
C++
C++智能指针 shared_ptr 与
weak_ptr
原理
注:源代码摘自GNUC++,除此之外为原创,转载请注明出处。欢迎关注[懒人漫说]公众号,分享Java、Android、C/C++技术,包括基础、自己遇到的问题解决过程。当然如果关注并留言问题的话,我们力所能及的话会帮你解决并回复哟。我们和你一样,是正在成长的程序员,我们也会分享自己的成长路上的感想,希望可以和你一起努力成长。//Copyright(C)2007-2016FreeSoftwareFo
storm_zy
·
2020-09-15 23:12
C++
智能指针shared_ptr的实现
提供的智能指针包括auto_ptr、unique_ptr、
weak_ptr
、shared_ptr几中。其中auto_ptr最弱,建议不要使用。
MostHandsomeWang
·
2020-09-15 23:46
c/c++
auto_ptr、shared_ptr、
weak_ptr
、scoped_ptr用法小结
auto_ptrauto_ptr是现在标准库里面一个轻量级的智能指针的实现,存在于头文件memory中,之所以说它是轻量级,是因为它只有一个成员变量(拥有对象的指针),相关的调用开销也非常小。下面的代码来自于VC++8.0里面的源码:里面有个auto_ptr_ref的数据结构,我们可以把它忽略,这个只是内部使用的代理结构,用于一些隐式的const变化,我们客户端代码通常不会直接使用到它。我们可以看
lollipop_jin
·
2020-09-15 23:28
c++
技术类
浅谈shared_ptr及shared_ptr涉及到的循环引用问题
起初在C++标准库里面是没有智能指针的,直到C++11才加入了shared_ptr和unique_ptr以及
weak_ptr
。
小葱1024
·
2020-09-15 21:01
c++语言
caffe代码阅读3:data_reader、internalthread以及blocking_queue的实现细节-2016.3.15
(1)data_reader.cpp首先介绍一下boost::
weak_ptr
;弱引用是为了解决shared_ptr在循环引用下的内存释放问题而产生的。弱引用当引用的对象活着的时候不一定存在。
xizero00
·
2020-09-14 03:18
c/c++
神经网络
boost
深度学习框架
caffe
weak_ptr
的作用及应用场景——shared_ptr的循环引用问题
https://blog.csdn.net/LLZK_/article/details/52431404
石院情歌小王子
·
2020-09-13 16:50
C++面试题
你会不会处理多线程中的对象管理?
文章目录前言多线程与线程安全对象的创建很简单对象的销毁与竞态条件shared_ptr/
weak_ptr
再聊聊C++内存安全前言本系列为《你会不会处理多线程中的XXXX》。
看,未来
·
2020-09-11 16:02
Linux服务器编程
指针
c++
多线程
内存泄漏
智能指针对比
、解决循环引用的问题:与
weak_ptr
一起使用。
weak_ptr
只引用不计数。、能做STL容器中的元素(2)、boost::scoped_ptr--离开作用域自动析构--独享控制权
一缕阳光a
·
2020-08-25 01:19
C++
boost
STL
【总结】【C++11】智能指针区别及进步小结(待补充)
https://www.jianshu.com/p/5e2000c3f6a7(根据此补充)智能指针的本质C++11在std::auto_ptr基础上新增了std::shared_ptr、std::
weak_ptr
Emiiya
·
2020-08-25 01:24
c++中的四种智能指针
原始指针:通过new建立的*指针智能指针:通过智能指针关键字(unique_ptr,shared_ptr,
weak_ptr
)建立的指针智能引出的目的是为了解决c++中内存空间管理的问题:1、申请的空间在函数结束时忘记释放
在座的各位都是高手
·
2020-08-25 01:14
c++学习
四种智能指针C++
C++里面的四个智能指针:auto_ptr,shared_ptr,
weak_ptr
,un
$0
·
2020-08-25 01:14
上一页
2
3
4
5
6
7
8
9
下一页
按字母分类:
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
其他