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
RAII
C++ 智能指针实现之shared_ptr
前言智能指针本质上并不神秘,其实就是
RAII
资源管理功能的自然展现而已。本文将介绍如何实现C++中智能指针的shared_ptr。
L-Super
·
2024-01-20 13:25
C++
细枝末节
c++
stl
智能指针
QT中互斥锁QMutex的简单使用
保证在同一时刻只有一个线程在使用共享资源QMutex//阻塞加锁voidlock()//非阻塞加锁booltryLock(inttimeout=0)//解锁voidunlock()QMutexLocker对QMutex进行了
RAII
蝈蝈(GuoGuo)
·
2024-01-19 07:41
QT
qt
开发语言
webserver面试
1.2
RAII
参考开源项目,资源获取即初始化,任务执行之前获取数据库连接,执行完释放连接,对这个部分的理解和使用是个难点。
ミ míSs °
·
2024-01-17 00:49
服务器
运维
C++标准学习--智能指针
主要场景其中提到:为动态分配内存提供异常安全(
RAII
)将动态分配内存的所有权传递给函数从函数内返回动态分配的内存(工厂
baidu_16271159
·
2024-01-16 05:08
学习
【C++入门到精通】智能指针 [ C++入门 ]
为什么需要智能指针三、内存泄漏1.什么是内存泄漏,内存泄漏的危害2.内存泄漏的示例,以及解决方法3.内存泄漏分类(1)堆内存泄漏(Heapleak)(2)系统资源泄漏4.如何检测内存泄漏四、智能指针的使用及原理1.
RAII
Yawesh
·
2024-01-14 08:39
C++
c++
java
开发语言
c++智能指针
2、内存泄漏2.1什么是内存泄漏,内存泄漏的危害2.2内存泄漏分类2.3如何检测内存泄漏2.4如何避免内存泄漏3、智能指针的使用及原理3.1
RAII
3.2智能指针拷贝问题3.3auto_ptr3.4unique_ptr
dong132697
·
2024-01-14 08:48
c++笔记
c++
笔记
利用std::unique_ptr释放资源
unique_ptr是stl定义的一种智能指针,利用C++的
RAII
机制进行内存管理,防止内存泄漏。
王健
·
2024-01-14 04:23
C++
c++
C++面试:对象生命周期 & 垃圾回收
目录对象生命周期垃圾回收手动内存管理智能指针std::unique_ptr示例std::shared_ptr示例资源获取即初始化(
RAII
)文件句柄的
RAII
示例面试准备理解和实践案例分析案例1:使用智能指针案例
Thomas_Lbw
·
2024-01-12 11:39
c++
面试
C++
Qt 智能指针QScopedPoint用法
2.智能指针有什么用1.自动管理内存,避免内存泄漏和悬挂指针问题;2.简化代码,减少异常处理和资源管理的复杂性;3.提高代码可读性和可维护性;4.帮助实现
RAII
(资源获取即初始化)原则,更好地管理资源
FreeLikeTheWind.
·
2024-01-10 23:51
Qt记录
qt
开发语言
Modern C++ code snippets
目录1.限制模板函数的模板参数类型2.CRTP(CuriouslyRecurringTemplatePattern)3.元编程+insights4.完美转发5.工厂模式6.Lamdba表达式7.
RAII
深山老宅
·
2024-01-08 02:29
modern
C++
c++
开发语言
modern
C++
C++——智能指针和
RAII
该文章代码均在gitee中开源C++智能指针hpphttps://gitee.com/Ehundred/cpp-knowledge-points/tree/master/%E6%99%BA%E8%83%BD%E6%8C%87%E9%92%88智能指针传统指针的问题在C++自定义类型中,我们为了避免内存泄漏,会采用析构函数的方法释放空间。但是对于一些情况,系统往往并没有那么聪明,比如C语言里,我们m
鹅一百
·
2024-01-06 17:12
C++
c++
开发语言
C++垃圾回收机制
您可以使用使用
RAII
的智能指针(如果指针允许共享访问,则使用引用计数)来确定何时删除对象。一个好的智能指针库是Boost的智能指针。绝大多数情况下的智能指针可以取代原始指针。
简单的绿竹
·
2024-01-04 10:10
Java
c++
java
jvm
Modern C++ for C程序员 第2部分
文章目录ModernC++forC程序员第2部分命名空间类资源获取即初始化(
RAII
)智能指针线程,原子操作锁错误处理总结这是berthubert的系列文章,旨在帮助c代码人快速了解c++实用的新特性。
楚谷雨
·
2024-01-01 20:47
c++
c语言
C++ mutex
RAII
锁的自动释放
C++mutexRAII锁的自动释放#include#include#includeusingnamespacestd;//
RAII
锁的自动释放classXMutex{public:XMutex(std
木瞳
·
2024-01-01 03:46
笔记
C++
c++
开发语言
mutex
锁
C++11 特性
2.1内存泄漏的分类2.2如何避免内存泄漏3.智能指针的使用及原理3.1
RAII
3.2智能指针的原理还有常见的三种智能指针类型:STL中的一些变化右值引用和移动语义什么是左值?什么是
Obto-
·
2023-12-31 12:39
c++
c++
c语言
2023令我惊叹的C++代码用法
下面将介绍五个C++高级代码知识,包括虚函数、模板、智能指针、多线程和
RAII
。同时,我会展示一个最令自己惊叹的C++代码,并解释它的用途和用法。
VNGRY
·
2023-12-31 05:20
c++
开发语言
02 智能指针
->智能指针本质上就是
RAII
资源管理功能的自然展现。1.模板化和易用性:能够包装任意类型的指针。
半盏清茶_6300
·
2023-12-31 01:55
C++中的资源管理技术---RALL
ResourceAcquisitionIsInitialization(
RAII
)是C++编程中的一种重要原则,它是一种资源管理的技术。
晨风先生
·
2023-12-29 10:08
c++
开发语言
详解—C++[智能指针]
二.内存泄漏2.1什么是内存泄漏,内存泄漏的危害2.2内存泄漏分类1.堆内存泄漏(Heapleak)2.系统资源泄漏2.3如何避免内存泄漏三.智能指针的使用及原理3.1
RAII
3.2智能指针的原理3.3std
努力学习的小赵同志
·
2023-12-25 20:53
C++
c++
算法
数据结构
单例模式(C++实现)
RAII
运用只能在栈上创建对象只能在堆上创建的对象单例模式设计模式懒汉模式解决线程安全·优化饿汉模式饿汉和懒汉的区别线程安全与STL与其他锁
天穹南都
·
2023-12-25 10:27
单例模式
c++
开发语言
RAII
智能指针
一.RAIIresourceacquisitionisinitializationRAII是利用对象声明周期来控制程序资源的简单技术在对象构造时获取资源,控制着对资源的访问使之在对象的生命周期内始终保持有效,最后在对象析构的时候释放资源。借此,我们实际上把管理一份资源的责任托管给一个对象好处:①.不需要显式地释放资源②.采用这种方式,对象所需的资源在其生命周期内始终有效二.智能指针auto_ptr
C1238888
·
2023-12-23 16:45
开发语言
c++
算法
C++——C++11(2)
我在我的C++异常博客中曾提到,对于异常的处理经常会导致内存泄漏问题,一种解决方法是异常的重新抛出,还有一种就是
RAII
,那么
RAII
的思想体现在C++中就是智能指针,所以接下来我将简单的介绍,什么是
RAII
歪~~
·
2023-12-23 06:03
c++
开发语言
生产消费者模型(引入--超市),321原则,阻塞队列实现+优点(代码,伪唤醒问题,条件变量接口wait中锁的作用),进阶版实现(生产任务,
RAII
风格),多生产多消费实现+优点
基础版思路代码pthread_cond_wait的第二个参数为什么是把锁伪唤醒问题介绍代码示例优点引入介绍模拟实现--进阶版增加生产/消费规则生产任务(随机)思路代码示例生产任务(从键盘读入)代码示例锁的封装(
RAII
沐风ya
·
2023-12-22 05:02
linux
开发语言
c++
linux
【C++高阶(七)】C++异常处理的方式
NEO ⏩专栏分类:C++从入门到精通⏪ 代码仓库:NEO的学习日记 关注我带你学习C++ 异常处理的方式1.前言2.C语言处理异常的方式3.C++异常概念4.异常的抛出和匹配原则5.异常的重新抛出6.
RAII
杭电码农-NEO
·
2023-12-19 01:22
c++
开发语言
异常处理
让内存无处可逃:智能指针[C++11]
智能指针文章目录智能指针前言
RAII
什么是智能指针智能指针的应用示例C++98的auto_ptr共享型智能指针:shared_ptrshared_ptr的使用初始化获取原生指针指定删除器默认删除器default_delete
EQUINOX1
·
2023-12-18 08:54
c++
开发语言
C++
智能指针用法及其使用代码详解
目录概念
RAII
机制介绍智能指针雏形shared_ptr原理介绍shared_ptr使用方法unique_ptrweak_ptr概念智能指针不是一个指针,它其实是一个对象。
晴夏。
·
2023-12-18 03:06
c++编程相关
智能指针
【C++多线程编程】(三)之详解lock_guard
std::lock_guard的主要作用是在多线程环境中简化互斥锁的使用,通过
RAII
(资源获取即初始化)方式确保在作用域内对互斥锁的安全管理。
SensizliKLoU
·
2023-12-17 13:39
学习笔记
c++
开发语言
学习方法
笔记
C++ 11 -- 初步认识智能指针
一.
RAII
1.1
RAII
的概念一般情况下,C++申请资源后都需要手动释放资源,一旦忘记资源的释放就会造成内存泄漏,为了解决内存泄漏问题,C++引入了
RAII
机制。
云烟梦柳
·
2023-12-16 01:49
java
开发语言
c++
数据结构
linux
算法
C++:智能指针[重点!]
目录一、关于智能指针1、引入智能指针2、
RAII
二、详述智能指针auto_ptrunique_ptrshared_tr循环引用weak_ptr定制删除器三、关于内存泄漏一、关于智能指针1、引入智能指针首先引入一个例子
青春_strive
·
2023-12-05 11:02
C++
c++
开发语言
C++-详解智能指针
目录编辑一.什么是智能指针1.
RAII
2.智能智能指针二.为什么需要智能指针1.内存泄漏a.什么是内存泄漏,内存泄漏的危害b.内存泄漏分类c.如何检测内存泄漏d.如何避免内存泄漏总结一下:2.为什么需要智能指针以及智能指针的原理三
Small black human
·
2023-12-05 05:50
c++
开发语言
C++【智能指针】
内存泄漏什么是内存泄漏,内存泄漏的危害内存泄漏分类如何避免内存泄漏智能指针的使用及原理
RAII
思想智能指针的原理C++标准库提供的常见智能指针为什么需要智能指针?
cefler
·
2023-12-03 14:56
C++
c++
智能指针
Effective C++(四): 资源管理
文章目录一、智能指针驱动的
RAII
二、shared_ptr和weak_ptr三、如何复制
RAII
对象四、在资源管理类中应该提供对原始资源的访问函数为了防止忘记调用delete造成的内存泄露,我们应该尽可能让对象管理资源
NUS_Ryan
·
2023-12-03 01:57
effective
cpp
c++
【智能指针】
目录:前言智能指针(一)智能指针初始了解内存泄漏1.内存泄漏分类2.如何检测内存泄漏3.如何避免内存泄漏使用智能指针之前,异常安全的处理(二)智能指针实现既原理智能指针
RAII
使用智能指针之后,异常安全的处理
胜利熊猫
·
2023-12-02 06:49
c++初阶
开发语言
c++
后端
智能指针
C++11---智能指针
1.1内存泄漏2.智能指针的使用及原理2.1
RAII
2.2智能指针的原理3.C++98---auto_ptr4.unique_ptr5.shared_ptr5.1循环引用6.weak_ptr1.为什么引入智能指针
没什么..
·
2023-11-30 13:49
C++语法知识
【C++】线程同步一
文章目录一、线程同步题(1)原子操作(2)互斥锁(3)
RAII
包装类管理互斥锁一、线程同步题两个线程同时对一个全局变量++操作,保证最后的结果正确(1)原子操作#include#include#include
code-016
·
2023-11-28 10:28
C++
c++
线程同步
C++多线程学习(三):锁资源管理和条件变量
参考引用C++11141720多线程从原理到线程池实战代码运行环境:VisualStudio20191.利用栈特性自动释放锁
RAII
1.1什么是RAIIRAII(ResourceAcquisitionIsInitialization
Robot_Yue
·
2023-11-28 08:33
C++多线程学习
c++
学习
RAII
lock_guard
unique_lock
shared_lock
互斥锁
c++ 11读写锁
参考:C++中的
RAII
_一蓑烟雨任平生也无风雨也无晴-CSDN博客C++11实现模板化(通用化)
RAII
机制_10km的专栏-CSDN博客_c++11
raii
无锁编程:c++11基于atomic实现共享读写锁
搁浅的渔
·
2023-11-28 05:59
c++
c++
git
html5
C++智能指针的简单实现
2.简单实现利用C++中的局部对象的构造析构特性,实现
RAII
。2.1整形的智能指针简单的int类型的智能指针实现classsmp{public:expli
_不会dp不改名_
·
2023-11-24 23:28
modern
cpp
c++
开发语言
【C++11】智能指针 {内存泄漏;
RAII
设计思想,智能指针的拷贝问题;auto_ptr;unique_ptr;shared_ptr & weak_ptr:线程安全问题,循环引用问题,定制删除器}
一、为什么需要智能指针?下面我们先分析一下下面这段程序有没有什么内存方面的问题?intdiv(){inta,b;cin>>a>>b;if(b==0)throwinvalid_argument("除0错误");returna/b;}voidFunc(){//1、如果p1这里new抛异常会如何?//2、如果p2这里new抛异常会如何?//3、如果div调用这里又会抛异常会如何?int*p1=newin
芥末虾
·
2023-11-23 11:59
C++
c++
指针
内存泄漏
线程安全
开发语言
golang日常开发系列之二--巧用defer
我们都知道,在golang中,有一种语言特性跟C++中的
RAII
特别相似,那就是defer。
后端技术小屋
·
2023-11-23 01:32
C++面试汇总
文章目录是否了解
RAII
(ResourceAcquisitionisInitialization)?请阐述。设计模式有哪些?
嘻嘻嘻嘻嘻嘻啊
·
2023-11-22 16:41
Linux
C++
mysql
sql
数据库
【C++进阶之路】第八篇:智能指针
二、内存泄漏1.什么是内存泄漏,内存泄漏的危害2.内存泄漏分类(了解)3.如何检测内存泄漏(了解)4.如何避免内存泄漏三、智能指针的使用及原理1.
RAII
2.智能指针的原理3.std::auto_ptr
Captain-Lin
·
2023-11-22 06:14
C++学习与应用
c++
java
算法
开发语言
c语言
哈希算法
数据结构
C++智能指针
2.内存泄漏2.1什么是内存泄漏,内存泄漏的危害2.2内存泄漏分类(了解)2.3如何检测内存泄漏(了解)2.4如何避免内存泄漏3.智能指针的使用及原理3.1
RAII
3.2智能指针的原理3.3std::auto_ptr3.4std
槛外长江__自流
·
2023-11-21 04:24
c++
c++
开发语言
《Effective C++》条款14
在资源管理类中小心copying行为你写了一个用来管理锁的
RAII
对象:classLock{public:Lock(mutex*m):mtx(m){mtx->lock();}~Lock(){mtx->unlock
荷兰的乳牛
·
2023-11-17 00:33
c++
开发语言
从C语言到C++_40(多线程相关)C++线程接口+线程安全问题加锁(shared_ptr+STL+单例)
目录1.C++多线程1.1thread库1.2mutex库1.3
RAII
锁1.4atomic+CAS1.5condition_variable1.6分别打印奇数和偶数2.shared_ptr线程安全2.1
GR_C
·
2023-11-13 21:53
④从C语言到C++
c语言
c++
多线程
安全
C++11『基础新特性』
2.1.对于内置类型2.2.对于自定义类型2.3.高效的玩法3.简化声明3.1.auto自动推导类型3.2.decltype获取推导类型3.3.nullptr空值补丁4.范围for5.智能指针5.1.
RAII
北 海
·
2023-11-13 15:50
C++修行之路
c++
开发语言
【C++】智能指针【内存泄漏|智能指针原理及使用|
RAII
】
目录1、了解内存泄露1.1内存泄漏的定义及危害1.2内存泄漏分类(了解)1.3如何检测内存泄漏(了解)1.4如何避免内存泄漏2、智能指针的引出3、智能指针的使用及原理3.1
RAII
3.2智能指针的原理3.3std
姜暮、
·
2023-11-09 21:29
【c++】基础全套
c++
开发语言
C++ 智能指针(共享指针、唯一指针、自动指针)
从较浅的层面看,智能指针是利用了一种叫做
RAII
(资源获取即初始化)的技术对普通的指针进行封装
litterRainxixi
·
2023-11-07 19:31
c++
开发语言
C++11新特性(四)——智能指针
文章目录一、什么是智能指针1.1
RAII
二、常见内存泄漏2.1什么是内存泄漏,内存泄漏的危害2.2常见内存泄漏分类三、智能指针发展史3.1智能指针原理3.2auto_ptr3.3unique_ptr3.4shared_ptr3.5
s_persist
·
2023-11-07 19:55
C++
c++
java
jvm
std lock_guard vs unique_lock 相同点以及不同点
都实现了
RAII
机制,可以自动加锁以及解锁。不同点功能lock_gurad:提供了一种简单的、固定的锁定机制,不支持手动加解锁。创建即加锁,作用域结束自动析构解锁,无需手工解锁。
luohaha66
·
2023-11-06 14:04
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
其他