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++11:智能指针(二)实战篇(附上实例)
目录1、unique_ptr:2、shared_ptr:3、
weak_ptr
:4、如何处理循环引用问题?
Ivy_belief
·
2023-10-31 18:17
#
c++新特性
1024程序员节
c++
智能指针的使用
智能指针在C++11版本之后提供,包含在头文件中,shared_ptr、unique_ptr、
weak_ptr
。
thequitesunshine007
·
2023-10-30 07:04
Linux/C++
c++
c语言
【C++】智能指针:auto_ptr、unique_ptr、share_ptr、
weak_ptr
(技术介绍 + 代码实现)(待更新)
文章目录0.概述智能指针,智能在哪儿?RAII的介绍四个智能指针的特点:1.auto_ptr(C++98)核心功能的简单实现2.unique_ptr(C++11)核心功能的简单实现3.shared_ptr(C++11)核心功能的简单实现0.概述智能指针,智能在哪儿?使用了模板类,建立的是智能指针对象,自动调用智能指针类型的构造和析构函数。也就是说,对于动态开辟的空间如果用智能指针保存,就不需要手动
TTang-sq
·
2023-10-29 05:56
C++
c++
java
jvm
智能指针(C++11)
文章目录简介内存泄漏内存泄漏分类内存泄漏检测工具RAII智能指针原理智能指针使用std::auto_ptrstd::unique_ptrstd::shared_ptrstd::shared_ptr循环引用std::
weak_ptr
拖拉机厂第一代码手
·
2023-10-28 16:26
C++
c++
开发语言
C++之智能指针
智能指针的原理3、智能指针的使用三、智能指针的拷贝问题四、标准库中的智能指针1、auto_ptr2、unique_ptr3、shared_ptr~模拟实现~shared_ptr循环引用问题~定制删除器4、
weak_ptr
dbln
·
2023-10-28 08:15
C++
c++
算法
开发语言
内存泄漏问题,4种智能指针(介绍+模拟实现)
目录内存泄漏介绍分类堆内存泄漏系统资源泄漏检测内存泄漏的方式智能指针引入介绍原理引入RAII原则指针性质拷贝auto_ptr介绍代码boost库unique_ptr介绍代码shared_ptr介绍删除器代码问题(循环引用)
weak_ptr
沐风ya
·
2023-10-28 03:33
c++
1024程序员节
c++
C++智能指针[下](shared_ptr/
weak_ptr
/循环引用/删除器)
文章目录4.智能指针[shared_ptr]4.1设计理念成员属性4.2主要接口拷贝构造4.3引用计数线程安全问题测试线程安全通过对计数引用的加锁保护使得类线程安全类实例化的对象使用时需要手动加锁保护"锁"的引进线程引用传参问题4.4整体代码5.循环引用问题5.1问题的引入5.2分析造成此问题的原因5.3weak_ptr的主要代码6.数组对象的删除问题6.1代码问题6.2std::shared_p
阿猿收手吧!
·
2023-10-26 14:52
遣返回家的C家家
c++
java
开发语言
Linux多线程服务端编程:使用muduo C++网络库 学习笔记 第一章 线程安全的对象生命期管理
如何避免对象析构时可能存在的racecondition(竞态条件)是C++多线程编程面临的基本问题,可以借助Boost库的shared_ptr和
weak_ptr
完美解决,这也是实现线程安全的Observer
吃着火锅x唱着歌
·
2023-10-25 00:54
C++网络库
linux
c++
学习
深入篇【C++】总结智能指针的使用与应用意义&&(auto_ptr/unique_ptr/shared_ptr/
weak_ptr
)底层原理剖析+模拟实现
深入篇【C++】总结智能指针的使用与应用意义&&(auto_ptr/unique_ptr/shared_ptr/
weak_ptr
)底层原理剖析+模拟实现智能指针的出现智能指针的使用应用意义/存在问题智能指针原理剖析
小陶来咯
·
2023-10-23 16:46
C++(进阶学习)
c++
算法
开发语言
C++11之用户自定义字面量(ClassType operator““_C(param...))
regex_search、regex_replace)C++11之线程库(Thread、Mutex、atomic、lock_guard、同步)C++11之智能指针(unique_ptr、shared_ptr、
weak_ptr
林夕07
·
2023-10-23 09:27
#
C++11
C++
自定义字面量
C++11新特性
【C++】智能指针的分析
文章目录来源引入智能指针问题要求解决方案智能指针总结C++11中的智能指针原理、使用、实现智能指针的作用智能指针的使用shared_ptr的使用例程unique_ptr的使用例程
weak_ptr
的使用例程循环引用智能指针的设计和实现参考
wuxiaoxiao2021
·
2023-10-23 07:39
C++
智能指针
【ONE·C++ || 智能指针 & 特殊类的设计】
总言 主要介绍智能指针(auto_ptr、unique_ptr、shared_ptr、
weak_ptr
)和特殊类的设计(单例模式)。文章目录总言1、为什么需要智能指针?
藏鹤虞渊
·
2023-10-23 07:28
#
【ONE·C++】
c++
C++智能指针使用总结
C++智能指针使用总结C++提供了4种智能指针用于对分配的内存进行自动释放,这些智能指针如下:auto_ptr、unique_ptr、shared_ptr、
weak_ptr
。
yedehei_lt
·
2023-10-20 12:32
c/c++
智能指针
c++11
指针
【C++11】智能指针的使用以及模拟实现(shared_ptr,unique_ptr,auto_ptr,
weak_ptr
)
auto_ptr1.基本使用2.模拟实现二、unique_ptr1.基本使用2.模拟实现三、shared_ptr1.基本使用2.引用计数实现3.析构函数的升级(对于数组)4.循环引用(坑点)5.模拟实现四、
weak_ptr
Satoru_Kaugo
·
2023-10-20 00:08
c++
java
算法
C11智能指针shared_ptr、unique_ptr、
weak_ptr
目的:实现堆内存的自动回收(垃圾回收机制)智能指针可以在适当时机自动释放分配的内存。也就是说,使用智能指针可以很好地避免“忘记释放内存而导致内存泄漏”问题出现。智能指针的作用是防止忘记调用delete释放内存和程序异常的进入catch块忘记释放内存。补充:内存泄漏(momoryleak):是指程序在申请新的内存空间后,没有释放已经申请的内存空间,后果也许会造成内存溢出。内存溢出(outofmem
Dragonxxl
·
2023-10-19 20:34
c++
c++
c语言
c++11
C++智能指针之shared _ptr、
weak_ptr
、unique_ptr
一、classshared_ptrshared_ptr具有共享式拥有的概念。即多个shared_ptr可以指向相同的对象,该对象和其相关资源会在“最后一个引用被销毁”时释放。1、shared_ptr的初始化:(1)直接使用初始化shared_ptrstr(newstring("name"));shared_ptrstr2{newstring("name")};//但是不能以以下方式声明一个shar
king_weng
·
2023-10-19 20:30
C/C++
shared_ptr
weak_ptr
unique_ptr
智能指针
C++11 智能指针
unique_ptrunique_ptr基本用法自定义make_unique创建unique_ptrunique_ptr与shared_ptr的区别自定义unique_ptr删除器3.weak_ptrweak_ptr基本用法
weak_ptr
zoutaofen
·
2023-10-18 18:37
C++
c++
【c++智能指针】
目录一、智能指针的使用及原理二、auto_ptr三、unique_ptr三、shared_ptr四、
weak_ptr
五、定制删除器一、智能指针的使用及原理RAII(ResourceAcquisitionIsInitialization
龙里出生的蛋
·
2023-10-18 15:47
c++
【C++】C++11——智能指针、内存泄漏、智能指针的使用和原理、RAII、auto_ptr、unique_ptr、shared_ptr、
weak_ptr
文章目录C++117.智能指针7.1内存泄漏7.2智能指针的概念7.3智能指针的使用7.3.1auto_ptr7.3.2unique_ptr7.3.3shared_ptr7.3.4weak_ptrC++117.智能指针7.1内存泄漏 什么是内存泄漏: 内存泄漏指因为疏忽或错误造成程序未能释放已经不再使用的内存的情况。内存泄漏并不是指内存在物理上的消失,而是应用程序分配某段内存后,因为设计错误,
鳄鱼麻薯球
·
2023-10-15 16:23
C++
c++
初探boost之smart_ptr库学习笔记
概述Boost.smart_ptr库提供了六种智能指针,除了shared_ptr和
weak_ptr
以外还包括scoped_ptr、scoped_array、shared_array、intrusive_ptr
wangxiaobupt
·
2023-10-14 10:35
【Boost】
【C/C++】
c++
boost
shared_ptr
weak_ptr
smart_ptr
C++ | 再探智能指针(shared_ptr 与
weak_ptr
)
文章目录:一、独占型智能指针scope_ptr二、强智能指针shared_ptr三、弱智能指针
weak_ptr
注:在本文中模拟的智能指针并不与库中的智能指针的实现完全相同,只是为了通过探究其实现原
我叫RT
·
2023-10-14 10:34
#
C++
智能指针
指针
C++
C++智能指针(二)——
weak_ptr
初探
shared_ptr存在的问题2.使用weak_ptr2.1初始化weak_ptr2.2访问数据3.附录4.参考文献1.shared_ptr存在的问题与shared_ptr的引入要解决普通指针存在的一些问题一样,
weak_ptr
hhhcbw
·
2023-10-14 10:29
C++
#
智能指针
c++
开发语言
智能指针
C++ - 智能指针 - auto_ptr - unique_ptr - std::shared_ptr -
weak_ptr
前言C++当中的内存管理机制需要我们自己来进行控制,比如在堆上new了一块空间,那么当这块空间不需要再使用的时候。我们需要手动delete掉这块空间,我们不可能每一次都会记得,而且在很大的项目程序当中,造成内存泄漏也是不少了。C++不像Java一样,有gc,也就是垃圾回收站器,因为Java在操作系统之上还有一层虚拟机,这层虚拟机可以理解为运行的一个进程,所有的Java程序都是在这个虚拟机之上运行的
chihiro1122
·
2023-10-13 08:29
c++
jvm
开发语言
C++智能指针auto_ptr、unique_ptr、shared_ptr、weak_prt详解
目录一.为什么要使用智能指针二.auto_ptr三.unique_ptr四.shared_ptr五.
weak_ptr
智能指针均定义在头文件中:#include同时每种智能指针都是以类模板的方式实现一.为什么要使用智能指针
GodFishhh
·
2023-10-10 03:48
C++
c++
开发语言
C++:智能指针使用方法
auto_ptr,shared_ptr,
weak_ptr
,unique_ptr这四个是常见的智能指针,其中后三个是c++11支持,并且第一个已经被c++11弃用。1.有什么作用?
AI秘籍
·
2023-10-10 00:02
C++11之初始化列表
regex_search、regex_replace)C++11之线程库(Thread、Mutex、atomic、lock_guard、同步)C++11之智能指针(unique_ptr、shared_ptr、
weak_ptr
林夕07
·
2023-10-09 22:46
#
C++11
c++
开发语言
C++11之auto类型推导
regex_search、regex_replace)C++11之线程库(Thread、Mutex、atomic、lock_guard、同步)C++11之智能指针(unique_ptr、shared_ptr、
weak_ptr
林夕07
·
2023-10-07 10:22
#
C++11
c++
开发语言
C++11
auto
动态类型
C++中的智能指针
本文将重点介绍三种常见的智能指针类型:unique_ptr、shared_ptr和
weak_ptr
,并通过详细的示例代码演示它们的使用。
Rabbit-Tuzi
·
2023-10-07 10:48
C++
c++
开发语言
java
智能指针shared_ptr 与
weak_ptr
的区别
weak_ptr
是为了解决shared_ptr循环引用的问题,防止双向绑定1.share_ptr示例图解示意可以看出,当ptr_a,ptr_b的释放,并没有导致A,B类的析构。
Alex1_Code
·
2023-10-04 14:22
C++
c++
c++智能指针(unique_ptr)
在c++11中通过引入只能指针的概念,使得c++程序猿不需要手动释放内存智能指针的分类std::unique_ptrstd::shared_prtstd::
weak_ptr
注意:std::auto_ptr
arkliu
·
2023-10-04 03:29
智能指针
翻译的三哥的一篇文章,质量很高---by卡巴拉的树介绍4类智能指针用例介绍4类智能指针的用法shared_ptr和自定义的DeleterC++11智能指针系列c++11之
weak_ptr
使用介绍
執著我們的執著
·
2023-10-03 17:12
GCC STL源码解析 —— shared_ptr &
weak_ptr
sharedptr&weakptr1主要代码1.1count_Mutex_baseusing__gnu_cxx::__default_lock_policy;using__gnu_cxx::_Lock_policy;using__gnu_cxx::_S_atomic;using__gnu_cxx::_S_mutex;using__gnu_cxx::_S_single;//Emptyhelpercl
napoleonhoo
·
2023-10-03 09:25
工程与架构
c++
后端
【C++】智能指针
std::auto_ptr4、std::unique_ptr二、真正的智能指针std::shared_ptr1、std::shared_ptr的线程安全问题2、std::shared_ptr的循环引用3、
weak_ptr
看到我请叫我滚去学习Orz
·
2023-10-02 10:10
C++
c++
算法
开发语言
【C++】智能指针
::shared_ptr的基本设计std::shared_ptr的线程安全问题std::shared_ptr的定制删除器std::weak_ptrstd::shared_ptr的循环引用问题std::
weak_ptr
Fre丸子_
·
2023-10-01 19:02
c++
c++
java
算法
五万字长文 C C++ 面试知识总结(中)
为了在结构较复杂的情景中执行上述工作,标准库提供
weak_ptr
、
weixin_34413065
·
2023-09-29 19:21
面试
数据结构与算法
操作系统
C++智能指针
目录一智能指针二智能指针发展史1auto_ptr2scoped_ptr/shared_ptr3C++11(unique_ptr和shared_ptr、
weak_ptr
)三STL中的智能指针1auto_ptr
Kessity
·
2023-09-28 16:21
C/C++
c++
开发语言
C++智能指针shared_ptr、unique_ptr以及
weak_ptr
目录shared_ptr类shared_ptr和unique_ptr都支持的操作shared_ptr独有的操作make_shared函数shared_ptr自动销毁所管理的对象由普通指针管理的动态内存在被显式释放前一直会存在shared_ptr和new结合使用定义和改变shared_ptr的其他方法不要混合使用普通指针和智能指针多个独立的shared_ptr指向同一块内存,会发生内存泄漏问题:值传
SOC罗三炮
·
2023-09-28 16:21
CPP
指针
指针
内存管理
c++
C++——智能指针
自动销毁所管理的对象引用计数shared_ptr的线程安全问题make_sharedshared_ptr和new结合使用智能指针保证发生异常时释放内存注意事项unique_ptrweak_ptr(解决循环引用)
weak_ptr
kksilu
·
2023-09-28 02:33
编程语言
c++
【C++11】三大神器之——智能指针
文章目录前言一、智能指针的原理1、RAII机制2、简单的实现二、智能指针的用法1、智能指针的分类2、unique_ptr基本语法3、shared_ptr基本语法4、删除器5、
weak_ptr
前言一、智能指针的原理
小白还在写代码
·
2023-09-28 02:31
C/C++
C++11
c++
开发语言
C++11 -- 智能指针
目录为什么需要智能指针内存泄露问题使用智能指针解决智能指针的原理RAIIC++的智能指针头文件std::auto_ptrstd::unique_ptrstd::shared_ptrstd::weak_ptrstd::
weak_ptr
为成功先生
·
2023-09-24 16:12
C++
c++
开发语言
对智能指针的理解和简单应用
unique_ptr,shared_ptr,
weak_ptr
是三种C++11支持的常用的智能指针,接下来分别观察它们的性质和一些简单应用,体会一下:shared_ptr(强引用):shared_ptr的实现
Gpangpangwa
·
2023-09-24 05:45
c++
C++11新特性之智能指针|内存泄漏
RAII2.智能指针的原理3.std::auto_ptr4.std::unique_ptr5.std::shared_ptrshared_ptr的线程安全问题shared_ptr中的循环引用6.std::
weak_ptr
yoouuung_
·
2023-09-23 19:31
C++
c++
开发语言
算法
centos
C++智能指针详解
一、写在前面C++里面的四个智能指针:auto_ptr,unique_ptr,shared_ptr,
weak_ptr
其中后三个是C++11支持,并且第一个已经被C++11弃用。
阿Q正砖
·
2023-09-20 15:14
c++
开发语言
STL标准库之智能指针
文章目录RAII机制unique_ptr注意事项基本用法使用场景shared_ptr注意事项基本用法使用场景
weak_ptr
注意事项基本用法使用场景RAII机制RAII即ResourceAcquisitionIsInitialization
Siveens
·
2023-09-16 06:15
STL标准模板库
c++
jvm
开发语言
观察者模式
include//forunordered_map#includeusingnamespacestd;classWidget{public:Widget(intid):ID(id){}intID;};//1.利用
weak_ptr
简单前行
·
2023-09-15 11:57
c++
观察者模式
C++11 新特性 ⑥ | 智能指针 unique_ptr、shared_ptr 和
weak_ptr
目录1、引言2、unique_ptr3、shared_ptr4、weak_ptr5、shared_ptr循环引用问题(面试题)
dvlinker
·
2023-09-13 14:13
C/C++基础与进阶
C++
C++11
C++11新特性
auto_ptr
unique_ptr
shared_ptr
weak_ptr
智能指针
weak_ptr
weak_ptr
这个指针天生一副小弟的模样,也是在C++11的时候引入的标准库,它的出现完全是为了弥补它老大shared_ptr天生有缺陷的问题。
一只牛_007
·
2023-09-12 18:31
C++11
智能指针
【c++】weak_ptr&shared_ptr
为什么不直接使用this指针weak_ptr&shared_ptrweak_ptrweakSelf=dynamic_pointer_cast(shared_from_this());这段代码涉及到C++中的
weak_ptr
dualven_in_csdn
·
2023-09-12 18:54
音视频
java
jvm
算法
C++
weak_ptr
weak_ptr
指向一个shared_ptr指向的对象,且不会改变对象的引用计数。
weak_ptr
不控制所指对象的生命周期。
L7256
·
2023-09-09 17:50
C/C++
c++
enable_shared_from_this 典型使用场景
一个具体的例子作用总结enable_shared_from_thisenable_shared_from_this是个CRTP模板类,提供了一个可以返回一个shared_ptr的接口,源码也很简单,就是根据
weak_ptr
无人等人
·
2023-09-09 14:29
C\C++
杂谈
c++
开发语言
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
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
其他