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
PTR
c++三种智能指针shared_
ptr
、weak_
ptr
、unique_
ptr
的原理和使用
c++智能指针总结一、智能指针出现的原因1.基于我们的的编程习惯,在堆区动态管理的资源忘记释放或者回收了,导致内存泄漏。2.有多个指针指向同一片内存的问题,造成内存资源的重复释放或回收。3.程序在在抛出异常前申请了资源,以至于异常抛出时导致程序中断,无法执行析构函数delete内存从而导致的内存泄漏。基于上面三个主要的原因,聪明的程序员就提出了智能指针方便管理我们自己的内存,一定程度上解决了c++
奔跑的小白、
·
2024-02-08 12:26
c++
visual
studio
c语言
c++智能指针的使用,shared_
ptr
,unique_
ptr
,weak_
ptr
三种智能指针shared_
ptr
,unique_
ptr
,weak_
ptr
;将shared_
ptr
存放在一个容器中,不再需要它的时候,要erase掉。
xutopia77
·
2024-02-08 12:55
指针
java
内存泄漏
c++
编程语言
智能指针(shared_
ptr
、unique_
ptr
、weak_
ptr
)的使用
智能指针的使用一.shared_
ptr
1.创建一个shared_
ptr
2.shared_
ptr
的常用成员函数reset成员函数的使用3.
代码乌龟
·
2024-02-08 12:55
C/C++
C++
智能指针
c++应避免使用普通指针,而使用智能指针(包括shared,unique,weak)
智能指针在C++中,使用智能指针(如std::shared_
ptr
、std::unique_
ptr
和std::weak_
ptr
)通常被认为是比使用普通指针更安全和推荐的做法。
马上到我碗里来
·
2024-02-08 12:24
#
C语言大师
c++
开发语言
指针
cpp11新特性之智能指针(下):深入理解现代cpp中的智能指针shared_
ptr
、unique_
ptr
以及 weak_
ptr
目录写在前面unique_ptrshared_ptrweak_
ptr
智能指针的使用陷阱致谢写在前面上一篇文章同大家深入探讨了auto_
ptr
。
unknown C++ beginner
·
2024-02-08 10:37
c++学习
c++
学习
笔记
开发语言
【学习笔记】【内核】container_of 的用法
include"stdlib.h"#include"string.h"#defineoffsetof(TYPE,MEMBER)((size_t)&((TYPE*)0)->MEMBER)#definecontainer_of(
ptr
踏流星
·
2024-02-08 09:26
学习
笔记
深入解析C++智能指针:从auto_
ptr
到weak_
ptr
我们经常会遇到指针忘记释放的问题,有时也不可避免,例如捕捉异常时会改变执行流,本来在程序结束前写好了释放,最终没有执行,造成内存泄漏。有一种解决方法,使用RAII(resourceacquisitionisinitialisition)技术,即使用局部对象控制资源,这就是智能指针。RAII的原理RAII(ResourceAcquisitionIsInitialization)是一种利用对象生命周期
灿烈♡
·
2024-02-08 04:18
C++
c++
Golang中的struct能不能比较
boolptr*intslice[]intmap1map[string]string}funcmain(){t1:=T1{Name:"yxc",Age:1,Arr:[2]bool{true,false},
ptr
DevilRoshan
·
2024-02-08 01:46
Linux线程库封装
includetypedefvoid(*callback_t)();staticintnum=1;//任务和线程绑定classThread{staticvoid*Routine(void*args){Thread*
ptr
乄北城以北乀
·
2024-02-07 22:41
Linux
is
not
unix
--
系统
linux
c++
算法
C++进阶--C++11智能指针
内存泄漏问题1.3.2利用异常的重新捕获解决1.3.3利用智能指针解决1.4智能指针的原理1.4.1需要考虑的问题1.4.2为什么要解决智能指针对象的拷贝问题二、C++中的智能指针2.1std::auto_
ptr
2.1.1
sushang~
·
2024-02-07 22:09
c++
java
开发语言
fwrite、fread、fprintf、fsanf以及流的定位——标准IO——day3
今天主要讲一下这四个函数接口:fwrite、fread、fprintf、fsancf以及流的定位:ftell、rewind、fseek函数接口fwritefwrite:size_tfwrite(constvoid*
ptr
Yifannn~
·
2024-02-07 20:04
Linux
服务器
数据库
linux container 作用,linux container_of 宏作用
include/linux/kernel.h中,首先来贴出它的代码:/***container_of-castamemberofastructureouttothecontainingstructure*@
ptr
范奕信
·
2024-02-07 20:59
linux
container
作用
Redis 字符串对象
字符串对象的编码可以是int、raw或embstr如果字符串对象保存的是整数,并且这个整数可以用long来表示,那么字符串对象会将整数值保存在字符串对象结构的
ptr
属性里面(将void*转换成long)
杰哥长得帅
·
2024-02-07 18:45
【C++从0到王者】第四十站:智能指针
文章目录一、为什么需要智能指针二、智能指针1.基本使用2.RaII3.解引用4.赋值运算符重载的问题三、auto_
ptr
1.库里面的auto_
ptr
2.模拟实现auto_
ptr
四、unique_
ptr
1
青色_忘川
·
2024-02-07 11:14
【C++】
c++
算法
开发语言
服务器
linux
运维
数据库
c++11 智能指针底层原理和代码模拟实现
目录内存泄漏的危害如何避免内存泄漏智能指针的使用及原理RAII智能指针的原理c++库中3个智能指针auto_
ptr
(简单实现)unique_
ptr
(简单粗暴的防止拷贝)share_
ptr
为什么需要智能指针
高高__
·
2024-02-07 09:34
c++
开发语言
yolo导出的onnx怎么使用onnxruntime调用
3.使用yolo官方的api推理:###把qimage图片转成mat函数defCoverQImageToMat(self):
ptr
_
weixin_46648511
·
2024-02-07 09:59
yolo
YOLO
C++ 11/14/17 智能指针
标准库提供的两种智能指针的区别在于管理底层指针的方法不同:shared_
ptr
和unique_
ptr
。
yaoming168
·
2024-02-07 07:29
C++语言学习
c++
智能指针shared_
ptr
shared_
ptr
是通过指针保持对象共享所有权的智能指针。shared_
ptr
保存所管理对象的引用计数,当引用计数变为0时,对象将被删除。
Lucy_stone
·
2024-02-07 06:49
c++标准库基础
c++
C++参悟:内存管理-unique_
ptr
内存管理-unique_
ptr
一、概述二、成员函数1.构造、析构函数函数1.构造函数2.析构函数3.赋值号2.修改器1.release()2.reset()3.swap()3.观察器1.get()2.get_deleter3
太阳风暴
·
2024-02-07 01:13
▼
C/C++
参悟笔记
unique_ptr
智能指针
c++
C++:智能指针
C++在用引用取缔掉指针的同时,模板的引入带给了指针新的发挥空间智能指针简单的来说就是带有不同特性和内存管理的指针模板unique_
ptr
1.不能有多个对象指向一块内存2.对象释放时内部指针指向地址也随之释放
number=10086
·
2024-02-06 22:49
c++
开发语言
智能指针
指针
模板
cpp智能指针篇(一):关于auto_
ptr
的一切
auto_
ptr
致谢写在前面在过去几天中,我深入研究了智能指针的相关知识。这已经不是我第一次学习智能指针了,但这一次,我感觉自己真正理解了智能指针的工作原理。
unknown C++ beginner
·
2024-02-06 13:03
c++学习
c++
学习
开发语言
笔记
C语言学习(6)—— 指针
(2)在声明指针变量时,如果没有确切的地址赋值,则声明为空指针:int*
ptr
=NULL。
Yacht13
·
2024-02-06 13:47
C语言
C语言
[c/c++] 关于虚函数表
不包含虚函数表,也没有虚函数表指针;每个包含虚函数的类都有且仅有一个自己的虚函数表和虚函数表指针;虚函数表里存放的是函数实现的地址;虚函数表里不会存放非虚函数;在对有虚函数表的类实例进行指针调用的时候,默认动作是
ptr
ykun089
·
2024-02-06 11:07
#
Common/Linux
C/C++
c++
0202作业
int*
ptr
=&value;
ptr
是一个指向int类型变量的指针。2.函数指针:是一个指针,它指向一个函数的入口地址。
JeromeSahara
·
2024-02-06 06:35
算法
数据结构
c++之说_10|自定义类型 union 联合体
之前我们说了一些struct结构体现在来了解新的自定义类型union联合体语法unionptr{void*fptr;CLassFunPtrp;FunPtrp2;
ptr
&operator=(CLassFunPtrptr
普世的微光
·
2024-02-06 05:43
C++
c++
开发语言
DNS服务器中的资源记录常用类型
例如序列号、刷新间隔、有效期和生命周期(TTL)等;②A(Address):地址记录表示主机名到IP地址的映射;③
PTR
(Pointer):指针
是毛毛吧
·
2024-02-05 23:34
网络
服务器
windows
holidaywork1
它们帮助我们访问其他变量的位置intx=10;int*
ptr
;
ptr
=&x;2.函数指针:这是一个指向函数的指针变量,就像是可以指向函数的“指南针”#includeintadd(inta,intb){returna
专写bug的屑
·
2024-02-04 23:45
算法
关于智能指针
实现自己的智能指针//智能指针保证能做到资源的自动释放//利用栈上的对象出作用域自动析构的特征,来做到资源的自动释放的templateclassCSmartPtr{public:CSmartPtr(T*
ptr
高二的笔记
·
2024-02-04 19:38
java
开发语言
C++指针
分析下面的重载函数#includeusingnamespacestd;voidpfun(char*str){cout()unique_
ptr
包装一个原始指针,并负责其生命周期。
钟居祥瑞
·
2024-02-04 13:50
C/C++学习
c++
开发语言
直接理解const
权限与初值一个const#includeintmain(){intx=1;inty=2;constint*
ptr
1=&x;intconst*
ptr
2=&x;int*constptr3=&x;//*
ptr
1
NineOne_豆浆狂魔
·
2024-02-04 06:46
c++
C++实现数据库连接池
MySQL数据库编程、线程安全的懒汉单例模式、queue、C++11多线程编程、线程互斥、线程同步通信、生产者-消费者模型、基于CAS的原子整形、智能指针shared_
ptr
、lambda表达式等。
伍树明
·
2024-02-03 22:09
数据库
c++
线程池
C++实现string类
构造函数,能使用=构造,构造函数传入的参数为constchar*类型拷贝构造函数析构函数operator=operator+operator+=operatorlen+strlen(r);newStr.
ptr
cliu1_16
·
2024-02-03 22:37
C++
c++
[C指针]安全使用指针
typedefint*PINT;PINTptr1,
ptr
2;两个变量均被声明为整数指针。检查返回值用malloc这类函数时一定要检查返回值,否则可能会导致程序非正常终止。下
AkuRinbu
·
2024-02-03 19:17
OpenCV(C++)---矩阵的掩膜操作
1、获取图像像素指针CV_Assert(myImage.depth()==CV_8U);Mat.
ptr
(inti=0)获取像素矩阵的指针,索引i表示第几行,从0开始计行数。
旭江同学
·
2024-02-03 13:46
opencv
opencv
矩阵
c++
yo!这里是智能指针相关介绍
目录前言内存泄漏RAII智能指针原理智能指针分类auto_ptrunique_ptrshared_
ptr
两个问题线程安全循环引用后记前言对于智能指针,听起来很高大上,其实本质上就是一个类。
大写的酷
·
2024-02-03 03:26
cpp
c++
开发语言
职场和发展
后端
经验分享
笔记
程序人生
嵌入式学习第十五天
.mallocvoid*malloc(size_tsize);功能:申请堆区空间参数:size:申请堆区空间的大小返回值:返回获得的空间的首地址失败返回NULL2.freevoidfree(void*
ptr
桮酒
·
2024-02-03 02:29
学习
嵌入式硬件
c语言
vim
编辑器
【五】【C++】类与对象(三)
constint*
ptr
妖精七七_
·
2024-02-02 10:56
C++
c++
开发语言
C语言:指针运算笔试题解析(包括令人费解的指针题目)
和黛玉学编程呀上面一期我们已经说了指针与数组的笔试题解析,这期我们就一起来探讨指针运算笔试题吧题目一#includeintmain(){inta[5]={1,2,3,4,5};int*
ptr
=(int*
復禮
·
2024-02-01 23:05
C语言学习和题目解析
c语言
算法
java
Modern C++ std::unique_
ptr
的实现原理
unique_
ptr
是一个非常简单的类,没有计数没有原子操作,非常类似纯指针。它的类定义也非常简单:它针对数组做了模板偏特化,因为它得支持数组操作比如Arr[i]。
深山老宅
·
2024-02-01 22:49
modern
C++
c++
开发语言
modern
C++
unique_ptr
Modern C++ std::tuple的size
不知道大家读过《ModernC++std::unique_
ptr
的实现原理》没有?
深山老宅
·
2024-02-01 22:49
modern
C++
c++
开发语言
modern
c++
tuple
Modern C++ sizeof(std::tuple)的秘密及实现代码解读
1.前言我们曾经至少四篇帖子或多或少的提到过std::tuple的原理及占用空间大小:ModernC++std::unique_
ptr
的实现原理ModernC++std::tuple的sizeModernC
深山老宅
·
2024-02-01 22:45
modern
C++
c++
modern
c++
tuple
sizeof
metaprogramming
为什么基类的析构函数是虚函数
点击链接查看更多C++技巧:EffectiveC++考虑以下继承结构,派生类Derived中申请了一块内存,使用指针i_
ptr
_管理,并在析构的时候释放掉。
于小咸
·
2024-02-01 20:09
C/C++
学习路线
c++
内存泄漏
内存管理
指针
编程语言
C语言中指针的深入学习之指针与数组之间的恩怨
我只是记录自己在所学之时觉得有价值的问题,这样博客也变得有意义了;a与&a的区别(指针加减的理解)注意此处是建立在定义inta[5]的基础上;此处的a不是字符;分析下边代码:main(){inta[5]={1,2,3,4,5};int*
ptr
Printf_yjs
·
2024-02-01 16:21
代码展示
指针
C语言进阶教程:深入核心,掌握高级编程技艺
void*
ptr
=malloc(siz
极客代码
·
2024-02-01 14:06
玩转C语言
c语言
DC-DNS(域名解析服务)(23国赛真题)
配置TXT记录,配置域名反向
PTR
。
Meaauf
·
2024-02-01 09:11
WindowsServer
网络系统管理
C++函数指针
(函数名只是个名称)例如booliscompare(conststring&);此函数的类型为bool(conststring&)指向该函数的函数指针声明为:bool(*
ptr
)(conststring
Pandamahu
·
2024-02-01 09:04
c++
c++
C++ 捕获所有异常并拿到错误原因的方法
std::exception_
ptr
是C++标准库中的一种类型,它用于在异常处理过程中保存异常的指针,以便稍后再次处理异常。它的作用是允许异常在不同的上下文中传播并延迟处理,同时保留异常的类型和信息。
w风雨无阻w
·
2024-02-01 07:59
工具
c++
算法
开发语言
嵌入式学习第十五天!(内存管理、链表)
mallocvoid*malloc(size_tsize);功能:申请堆区空间参数:size:申请堆区空间的大小返回值:返回获得的空间的首地址,失败返回NULL2.freevoidfree(void*
ptr
Little_white_Zhang
·
2024-02-01 01:02
学习
链表
数据结构
嵌入式学习第十五天
.mallocvoid*malloc(size_tsize);功能:申请堆区空间参数:size:申请堆区空间的大小返回值:返回获得的空间的首地址失败返回NULL2.freevoidfree(void*
ptr
浮生念扶桑
·
2024-01-31 23:57
嵌入式
学习
c语言
开发语言
智能指针|巨巨巨详细
智能指针shared_ptrshared_
ptr
的基本用法使用shared_
ptr
要注意的问题unique_
ptr
独占的智能指针weak_
ptr
弱引用的智能指针weak_
ptr
的基本用法weak_
ptr
Phoenix Studio
·
2024-01-31 23:40
java
jvm
算法
开发语言
上一页
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
其他