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
c++ 智能指针 unique_ptr
使用指针时很容易出现内存泄漏,便引入了智能指针,c++11中主要有三类std::unique_ptr:独占资源指针,同一时刻只能有一个指针指向同一个对象std::
shared_ptr
:共享资源指针,同一时刻可以有多个指针指向同一个对象
Tang Paofan
·
2024-01-05 07:57
C++/C
#智能指针
c++
笔记
c++ std::enable_shared_from_this 的作用
在类的内部获取
shared_ptr
是在所难免的。举个例子:在日常c++编程中,为了更好的管理资源,我们通常借助
shared_ptr
来达到对资源的自动管理。
sweetorange
·
2024-01-04 04:58
a2面试总结--c++新特性
答:不安全;本身是安全的,但是对象是不安全的;智能指针
shared_ptr
的线程安全、互斥锁_智能指针是线程安全的吗-CSDN博客【所有智能指针在多线程下引用计数也是安全的,也就是说智能指针在多线程下传递使用时引用计数是不会有线程安全问题的
曼城英泽
·
2024-01-03 08:51
c++
面试
开发语言
shared_ptr
实现多线程读写copy-on-write
原创数据库开发技术作者:liiinuuux时间:2016-09-2613:14:254730利用
shared_ptr
可以实现“读不阻塞写”。
星夜兼程工作笔记
·
2024-01-02 09:44
智能指针之
shared_ptr
初始化,引用计数,常用操作和自定义删除器等等03
一share_ptr1share_ptr基础1)共享所有权,不是被一个
shared_ptr
拥有,而是被多个
shared_ptr
之间相互协作。shared有额外开销。
Mango酱
·
2024-01-02 07:02
C++新特性相关
c++
指针
shared_ptr
的学习
includeclassA{public:A(){coutp(newA);//1std::shared_ptrp2=p;//2return0;}//1//0//销毁Constructordelete使用
shared_ptr
lpl轻舟已过万重山
·
2024-01-02 07:00
c++
算法
开发语言
条款13:以对象管理资源
文章目录没有管理的情况解决办法之unique_ptr智能指针解决办法之
shared_ptr
智能指针总结没有管理的情况 资源是指一旦你使用完它,就需要返回系统的东西。
ccloud11
·
2024-01-01 23:30
Effective
C++
c++
c++
C++中dynamic_cast和dynamic_pointer_cast
而关于
shared_ptr
无法利用这些原始的操作符进行转换,其定义了自己的类型转换操作符:static_pointer_cast,dynamic_pointer_cast,const_pointer_cast
Folllll
·
2023-12-30 01:14
C++
多态
指针
c++
boost
【QT】qt的智能指针
智能指针C++标准库中的三种智能指针:std::
shared_ptr
:使用引用计数,每一个
shared_ptr
的拷贝都指向相同的内存,每次拷贝都会触发引用计数+1,每次生命周期结束析构的时候引用计数-1
我不是程序猿儿
·
2023-12-30 00:04
QT之路
qt
开发语言
使用C++ 标准库map关联式容器根绝键值查找文件是否存在
下面这段代码创建了一个简单的示例,演示了如何使用std::map存储和检索std::
shared_ptr
类型的对象。
kxwang_
·
2023-12-27 20:53
数据结构
算法
基于Linux的C++
c++
算法
开发语言
手撸一个简单的
shared_ptr
首先先要明确
shared_ptr
的定义就是有多个对象指向同一块内存地址,大家都能访问该内存地址,当对象都被释放的时候释放该块内存,那么该类除了指向内存地址的指针外,还需要一个计数器,为了让所有对象计数器的值相等
橙子小满
·
2023-12-27 10:17
c++
开发语言
数据结构
详解—C++[智能指针]
(Heapleak)2.系统资源泄漏2.3如何避免内存泄漏三.智能指针的使用及原理3.1RAII3.2智能指针的原理3.3std::auto_ptr3.4std::unique_ptr3.5std::
shared_ptr
努力学习的小赵同志
·
2023-12-25 20:53
C++
c++
算法
数据结构
c++11特新:弱引用智能指针
弱引用智能指针std::weak_ptr可以看做是
shared_ptr
的助手,它不管理
shared_ptr
内部的指针。
想不出来_6
·
2023-12-23 23:13
c++
开发语言
笔记
Linux多线程服务端编程:使用muduo C++网络库 学习笔记 第八章 muduo网络库设计与实现(下)
TimerQueue::cancel()的一种简单实现是用
shared_ptr
来管理Timer对象,再将TimerrId定义为weak_ptr,这样几乎不用我们做什么事情。
吃着火锅x唱着歌
·
2023-12-23 14:26
C++网络库
linux
c++
网络
C++面向对象(OOP)编程-智能指针
本文旨在通过比较简单的语言理解智能指针,区分三种智能指针
shared_ptr
、unique_ptr、weak_ptr。同时解决
shared_ptr
循环引用的问题。
发狂的小花
·
2023-12-20 06:04
C/C++精进之路
c++
开发语言
智能指针
std::
shared_ptr
1.std::
shared_ptr
的实现是使用的引用计数,其基本结构为(非具体实现,大致结构)std::
shared_ptr
{std::shared_ptr_core*core;}也就是一个每个std:
笔墨情_3643
·
2023-12-19 15:31
C++
shared_ptr
类型转换的实现原理与type traits类型萃取
思考下面这个问题:#include#includeusingnamespacestd;classA{public:intdata;};classB:publicA{};templateclassTypeCast{};intmain(){shared_ptrb=make_shared();shared_ptra=b;//正确,为何能将b转成a?TypeCasttb;TypeCastta=tb;//错
奔跑的大伟哥
·
2023-12-18 22:13
c++
让内存无处可逃:智能指针[C++11]
什么是智能指针智能指针的应用示例C++98的auto_ptr共享型智能指针:shared_ptrshared_ptr的使用初始化获取原生指针指定删除器默认删除器default_delete指定删除器指定删除器管理动态数组
shared_ptr
EQUINOX1
·
2023-12-18 08:54
c++
开发语言
C++
裸指针与智能指针的线程安全问题
文章目录裸指针线程安全问题使用普通裸指针造成的问题
shared_ptr
和weak_ptr的解决问题
shared_ptr
的线程安全问题智能指针
shared_ptr
本身(底层实现原理是引用计数)是线程安全的智能指针指向的对象的线程安全问题
yhc166188
·
2023-12-18 03:07
c/c++
智能指针用法及其使用代码详解
目录概念RAII机制介绍智能指针雏形
shared_ptr
原理介绍
shared_ptr
使用方法unique_ptrweak_ptr概念智能指针不是一个指针,它其实是一个对象。
晴夏。
·
2023-12-18 03:06
c++编程相关
智能指针
C++ 智能指针的正确使用方式
C++11中推出了三种智能指针,unique_ptr、
shared_ptr
和weak_ptr,同时也将auto_ptr置为废弃(deprecated)。
bob62856
·
2023-12-18 02:05
C++ 智能指针学习
每个
shared_ptr
对象在内部维护着两个内存位置:1.指向
Meditation-
·
2023-12-18 02:34
c++
学习
开发语言
智能指针
5.2 C++11堆内存管理:智能指针与垃圾回收
而是引入unique_ptr、
shared_ptr
、weak_ptr三个智能指针。参见C++11智能指针·语
小黑屋1024
·
2023-12-18 00:38
深入理解C++11新特性
C++11
从 enable_if 了解模板元编程
templateclassTaskCancelableImp:publicTaskCancelable{public:usingPtr=std::
shared_ptr
;usingfunc_type=std
coolhuhu~
·
2023-12-15 11:52
c++
开发语言
std::enable_shared_from_this
1.作用能够让一个对象(名称为t,并且被一个std::
shared_ptr
对象pt管理),安全生成其他额外的std::
shared_ptr
实例(名称为pt1、pt2),它们与pt共享t的所有权如果一个类
ht6806
·
2023-12-14 12:03
C++11
c++
C++智能指针及简单实现
C++智能指针堆内存、栈内存与静态内存静态内存栈内存堆内存动态内存管理new、delete运算符智能指针实现智能指针
shared_ptr
智能指针的线程安全问题解决unique_ptrweak_ptr循环引用思维导图本模块思路动态内存管理
FangYwang
·
2023-12-06 12:58
C++
c++
学习
笔记
C++高级用法—使用boost::
shared_ptr
来创建共享指针对象并保持了多态性的特性
1.Introdution本文我们将使用了boost::
shared_ptr
来创建共享指针对象,并且实现多态的功能。
Jack Ju
·
2023-12-05 15:26
c++
笔记
c++
开发语言
智能指针-unique_ptr
unique_ptr2.特点3.unique_ptr的场景4.写模板时,写了两种,一份是对单个对象,一个是对一组对象给出的方案5.源码1.创建unique_ptr如何创建unique_ptrunique_ptr不像
shared_ptr
^花九九
·
2023-12-05 07:45
c++
开发语言
波奇学C++:智能指针(二):auto_ptr, unique_ptr,
shared_ptr
,weak_ptr
C++98到C++11:智能指针分为auto_ptr,unique_ptr,
shared_ptr
,weak_ptr,这几种智能都是为了解决指针拷贝构造和赋值的问题auto_ptr:允许拷贝,但只保留一个指向空间的指针
社交达人波奇酱
·
2023-12-04 14:37
波奇学c
c++
开发语言
enable_shared_from_this使用介绍
定义定义于头文件templateclassenable_shared_from_this;(C++11起)std::enable_shared_from_this能让其一个对象(假设其名为t,且已被一个std::
shared_ptr
Erice_s
·
2023-12-04 13:52
C/C++
c++
算法
开发语言
标准库头文件:memory
1.常用变量unique_ptr//模板类,拥有独有对象所有权语义的智能指针
shared_ptr
//模板类,拥有共享对象所有权语义的智能指针,不会因为weak_ptr也指向同一个对象而引用计数加1weak_ptr
zhuikefeng
·
2023-12-04 13:23
C++学习
c++
shared_ptr
unique_ptr
游戏开发-如何搭建一个WOW魔兽世界后端服务器
一、魔兽世界后端搭建前置知识1.lua程序设计lua基础lua错误处理lua编译与预编译lua模块与包元表与元方法环境lua/c接口编程2.C++新特性智能指针
shared_ptr
,unique_ptr
程序员yt
·
2023-12-03 15:17
服务器
运维
Effective C++(四): 资源管理
文章目录一、智能指针驱动的RAII二、
shared_ptr
和weak_ptr三、如何复制RAII对象四、在资源管理类中应该提供对原始资源的访问函数为了防止忘记调用delete造成的内存泄露,我们应该尽可能让对象管理资源
NUS_Ryan
·
2023-12-03 01:57
effective
cpp
c++
Android 13 - Media框架(22)- ACodecBufferChannel
这一节我们将了解ACodecBufferChannel中的buffer传输机制status_tACodecBufferChannel::queueInputBuffer(constsp&buffer){std::
shared_ptr
青山渺渺
·
2023-12-03 01:44
Android
Media
android
C++
Framework
Media
多媒体
C++中的智能指针有哪些?分别解决的问题以及区别?
1.C++中的智能指针有4种,分别为:
shared_ptr
、unique_ptr、weak_ptr、auto_ptr,其中auto_ptr被C++11弃用。
踏过山河,踏过海
·
2023-12-02 23:45
c/c++知识二次稳固
c++
C++相关闲碎记录(2)
1、误用shared_ptrint*p=newint;shared_ptrsp1(p);shared_ptrsp2(p);//error//通过原始指针两次创建
shared_ptr
是错误的shared_ptrsp1
半路程序员
·
2023-12-02 16:28
c++
enable_shared_from_this解析
enable_shared_from_this解析enable_shared_from_this,是一个以其派生类为模板类型实参的基础模板,继承它,this指针就能变成
shared_ptr
。
大东dev
·
2023-12-01 23:57
boost::enable_shared_from_this的用法
通过enable_shared_from_this可以返回
shared_ptr
的类型示例代码如下:classEachClient:publicboost::enable_shared_from_this
qq_3158353
·
2023-12-01 23:56
c++函数
c++11 智能指针 (std::
shared_ptr
)(六)
定义于头文件templateclassshared_ptr;(C++11起)构造对象std::make_shared,std::make_shared_default_inittemplateshared_ptrmake_shared(Args&&...args);(1)(C++11起)(T非数组)templateshared_ptrmake_shared(std::size_tN);(2)(C
繁星璀璨G
·
2023-12-01 23:56
#
智能指针
c++
智能指针
shared_ptr
C++11新特性之——enable_shared_from_this(Boost原有)
定义于头文件,其原型为:templateclassenable_shared_from_this;std::enable_shared_from_this能让一个对象(假设其名为t,且已被一个std::
shared_ptr
John_ToDebug
·
2023-12-01 23:25
c++
线程
c++
C/C++标准库梳理
缘由是由于我突然发现std库也有
shared_ptr
智能指针,boost库也有
shared_ptr
指针,那么有啥区别的,然后继而引发std库和boost库的区别,std库是标准库吗?
晴山ぺ
·
2023-11-30 22:35
C++
c语言
c++
开发语言
智能指针的理解
智能指针的原理RALL智能指针的使用std::auto_ptrstd::unique_ptrstd::
shared_ptr
为什么要定义智能指针?
halooy
·
2023-11-30 19:11
算法
c++
C++ 的智能指针std::
shared_ptr
1、为什么需要智能指针智能指针是为了解决内存泄漏问题内存泄漏问题,本质上是因为程序员自己忘记主动释放导致的智能指针的解决思路是:连带自动释放2、智能指针的本质工作原理(1)一方面,利用局部变量/对象分配在栈上,代码段结束时会自动释放的特性(2)另一方面,利用对象释放时会自动调用析构函数的特性3.智能指针的使用实例使用代码如下:#include#includeusingnamespacestd;cl
kaola_kao
·
2023-11-29 00:45
c++
C++ 智能指针unique_ptr原理与自定义实现
分析智能指针最常用的,就是
shared_ptr
和unique_ptr。
newchenxf
·
2023-11-27 12:44
C++
C++内存管理——unique_ptr
1.概述本想将unique_ptr,
shared_ptr
和weak_ptr写在同一篇文章中,无奈越(废)写(话)越(连)长(篇),本着不给自己和读者太大压力的原则,最终决定分为三篇去描述它们(不是恶意凑文章数哦
HIT_055
·
2023-11-27 04:41
C++11的weak_ptr弱引用的智能指针
弱引用指针weak_ptr是用来监视
shared_ptr
的,不会使引用计数器加1,它不管理
shared_ptr
内部的指针,主要是为了监视
shared_ptr
的生命周期,更像是
shared_ptr
的一个助手
铲灰
·
2023-11-26 22:03
深入应用C++11
c++
开发语言
C++11的
shared_ptr
共享的智能指针
shared_ptr
共享的智能指针std::
shared_ptr
使用引用计数,每一个
shared_ptr
的拷贝都指向相同的内存。在最
铲灰
·
2023-11-26 22:32
深入应用C++11
c++
开发语言
算法
c++ boost 中的 各种 转换
polymorphic_downcastshared_ptr支持的转型有:static_pointer_cast、const_pointer_cast、dynamic_pointer_cast,返回的结果是
shared_ptr
sunriseWang
·
2023-11-25 22:01
c++
boost
c++
boost
智能指针
CCCCCCC指针CCCCC
本文介绍[
shared_ptr
/unique_ptr/weak_ptr]的使用,以及
shared_ptr
引用计数和weak_ptr弱引用计数。
lusic01
·
2023-11-24 22:20
java
jvm
开发语言
C++中的智能指针
Shared_ptr
指针
shared_ptr
是一种智能指针(smartpointer),作用有如同指针,但会记录有多少个shared_ptrs共同指向一个对象。
syvge
·
2023-11-24 16:55
c++
c++
c语言
rust
上一页
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
其他