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++11之智能指针
(一)共享智能指针—shared_
ptr
1、智能指针介绍智能指针是存储指向动态分配(堆)对象指针的类。用于生存期的控制,能够确保在离开指针所在作用域时,自动地销毁动态分配的对象,防止内存泄露。
心之所向便是光v
·
2023-11-07 19:54
C++11
c++
开发语言
【C++11特性】智能指针
目录缘起头文件auto_
ptr
可能造成的问题解决方法shared_
ptr
存在以下问题:unique_ptrwake_
ptr
缘起提出该方法目的:很多时候开辟了空间都忘记释放,为了解决该问题,提出了智能指针方案头文件
域中四大
·
2023-11-07 19:23
技术
日志
c++
C++11新特性——智能指针之shared_
ptr
1、智能指针shared_ptrshared_
ptr
共享它指向的对象,多个shared_
ptr
可以指向(关联)相同的对象,在内部采用计数机制来实现。
is-zq
·
2023-11-07 19:52
C++
开发语言
c++
c++11新特性之独占指针unique_
ptr
独占智能指针unique_
ptr
独占智能指针不允许其他智能指针共享内部的指针,可以通过它的构造函数初始化一个独占智能指针对象,但是不允许通过赋值将一个unique_
ptr
赋值给另一个unique_
ptr
为成大道踏平坎坷
·
2023-11-07 19:50
c++学习笔记
c++
智能指针
【C语法学习】18 - fread()函数
文章目录1函数原型2参数3返回值4示例1函数原型fread():从与指定流stream相关联的二进制文件中读取数据块储存在str指向的内存空间中,函数原型如下:size_tfread(constvoid*
ptr
xduryan
·
2023-11-07 04:55
C语言语法基础
c语言
【C语法学习】17 - fwrite()函数
文章目录1函数原型2参数3返回值4示例1函数原型fwrite():将
ptr
指向的内存空间中储存的数据块写入与指定流stream相关联的二进制文件中,函数原型如下:size_tfwrite(constvoid
xduryan
·
2023-11-07 04:25
C语言语法基础
c语言
C++ 指针
以下是如何声明一个指针:int*
ptr
;//声明一个整数指针double*
ptr
2;//声明一个双精度浮点数指针2、指针的基本操作指针的初始化指针必须在使用
bmseven
·
2023-11-06 15:36
C/C++
c++
开发语言
【linux编程】linux文件IO的标准函数及其示例(fread,fwrite,fgetc,fputc,fgets,fputs,fprintf,fscanf)
fread函数函数原型:#includesize_tfread(void*
ptr
,size_tsize,size_tnmemb,FILE*stream);参数:
ptr
:指向一个缓冲区的指针,用于存储读取的数据
吻等离子
·
2023-11-06 09:39
嵌入式
c++
c语言
算法
日常随笔(c++11)——RAII与智能指针
文章目录1.RAII机制1.1为什么要使用RAII1.2如何使用RAII2.智能指针2.1智能指针的使用2.1.1share_
ptr
的使用2.1.2unique_
ptr
的使用2.1.3weak_
ptr
的使用
Overcautious
·
2023-11-06 06:04
日常随笔
C++
c++
开发语言
后端
C++ shared_
ptr
、weak_
ptr
具体实现分析
1、shared_
ptr
、weak_ptrshared_ptrshared_
ptr
采取引用计数来表示一块内存被几个智能指针所共享,当引用计数为0时,会自动释放该内存,避免了忘记手动释放造成的内存泄露问题
zzZhangYiLong
·
2023-11-06 01:03
C++新特性
c++
中间件
16.4 weak_
ptr
简介、weak_
ptr
常用操作与尺寸问题
一、weak_
ptr
简介weak_
ptr
辅助shared_
ptr
进行工作;强指的就是shared_
ptr
,弱指的就是weak_
ptr
。
zzyzxb
·
2023-11-06 01:03
c++学习
c++
C++ | shared_
ptr
与weak_
ptr
文章目录前言一、shared_
ptr
与weak_
ptr
是什么?
大柳_
·
2023-11-06 01:32
C++
c++
智能指针 unique_
ptr
和weak_
ptr
unique_ptrunique_
ptr
和shared_
ptr
不同,unique_
ptr
不允许所指向的内容被其他指针共享,所以unique_
ptr
是不允许拷贝构造和赋值的。
恋恋风辰
·
2023-11-06 01:02
C++
c++
c语言
visual
studio
weak_
ptr
智能指针的使用
目录一,weak_
ptr
变量的定义二,expired()成员函数三,lock()成员函数四,use_count()成员函数五,为什么要用weak_
ptr
一,weak_
ptr
变量的定义weak_
ptr
对象的构造有
猿来是码农
·
2023-11-06 01:02
#
智能指针
c++
shared_
ptr
和weak_
ptr
C++标准提供了两大类智能指针,这里主要介绍shared_
ptr
。
csdn_cjc
·
2023-11-06 01:29
C++标准库
c++
shared_
ptr
&&weak_
ptr
shared_ptrC++11中引入shared_
ptr
来简化内存的管理,当shared_
ptr
不再使用时,自动回收内存。
Forston
·
2023-11-06 00:58
C++随笔
boost
c++
weak_
ptr
介绍
本文转载于http://c.biancheng.net/view/7918.html 在C++98/03的基础上,C++11新标准引入了shared_
ptr
、unique_
ptr
以及weak_
ptr
这
YMWM_
·
2023-11-06 00:58
C++学习
weak_ptr用法
若要对多态类进行深拷贝,应使用虚函数的clone,而不是公开的拷贝构造赋值
拷贝一个多态类可能会导致切片问题,为了解决这个问题,应覆盖一个虚clone函数,让他根据实际类型进行复制并返回一个到新对象的所有权的指针(std::unique_
ptr
),在派生类,通过使用所谓的协变返回类型来返回派生类型
发如雪-ty
·
2023-11-06 00:28
C++设计经验简谈
c++
注意,注意,weak_
ptr
有坑
classTest{public:Test(){coutwp;{std::shared_ptrpInt(newTest);wp=pInt;}coutwp;{std::shared_ptrpInt(newTest);wp=pInt;}cout<<"----------1------------\n";if(wp.expired()){cout<<"不可用\n";}cout<
发如雪-ty
·
2023-11-06 00:26
C/C++基础
c++
实例化类,怎么限制只能在堆或栈分配!
在C++中,类的对象建立分为两种,一种是静态建立,如Aa;另一种是动态建立,如A*
ptr
=newA;这两种方式是有区别的。1、静态建立类对象:是由编译
_charles_
·
2023-11-05 23:13
C++面试
【带头学C++】----- 三、指针章 ---- 3.5 字符串与指针
charstr[128]="Helloworld";char*
ptr
=str;sizeof(s
程序小白Erike.
·
2023-11-05 21:15
C++从基础到抗大旗
c++
开发语言
1024程序员节
c语言
笔记
c++ 标准中的弱引用
一弱指针使用先看一个例子,没有弱智指针的情况下的嵌套引用#include#include//forstd::shared_
ptr
#includeclassPerson{std::stringm_name
Little熊猫
·
2023-11-05 18:37
redis 常见数据类型实现原理
Redis中都可以通过RedisObject来表示,该类型主要包含以下三个属性:type:类型,对应上面提到五种数据类型,如:REDIS_STRING、REDIS_LIST等等encoding:编码格式
ptr
盼兮猫
·
2023-11-05 15:39
redis
redis
数据结构
数据库
智能指针什么时候释放?什么时候引用计数为0
智能指针内部有一个计数器,当赋值给别的智能指针或者函数传参拷贝到另一个shared_
ptr
,计数器就会加1,当函数执行完毕,智能指针对象就被析构了,此时计数器就会减一,知道计数器变为0,说明没人在用这个对象了
weixin_43489941
·
2023-11-05 12:53
C++
2311dC++连接与串
装饰名.但是,因为C++没有像D的T[]内置切片类型,因此C++没有有效的D切片装饰.因此,无法编译以D切片为参数的extern(C++)函数.为此,可按结构转换切片:structDSlice(T){T*
ptr
fqbqrr
·
2023-11-05 10:30
dlang
d
c++
d
【C++】智能指针
为什么需要智能指针1.内存泄漏1.1什么是内存泄漏,内存泄漏的危害1.2内存泄漏分类(了解)1.3如何检测内存泄漏(了解)1.4如何避免内存泄漏2.异常的内存安全问题二、C++智能指针1.智能指针的概念2.auto_
ptr
3
椿融雪
·
2023-11-05 00:06
C++
1024程序员节
c++11
智能指针
sharepoint
跟我学C++中级篇——Pimpl中的unique_
ptr
一、问题在前面的Pimpl中提出个一个问题,就是如果把裸指针换成std::shared_
ptr
或std::unique_
ptr
会怎么样?
fpcc
·
2023-11-05 00:19
C++
C++11
c++
std::vector<pcl::PointCloud<pcl::PointXYZRGB>::
Ptr
> semantic_clouds_vector 可视化(C++代码)
//semantic_clouds_vector创建一个新的可视化对象pcl::visualization::PCLVisualizerviewer_vector("CloudsViewer");intcloudIndex=0;//用于生成唯一的IDfor(constauto&cloud:semantic_clouds_vector){//为每个点云生成一个唯一的IDstd::stringclou
RobotsRuning
·
2023-11-04 10:56
c++
PCL
PointXYZRGB
viewer
指针函数和函数指针的区别
例如:void(*
ptr
)();结构为:类型说明符(*指针变量)(参数
SUN1_SHINE2
·
2023-11-04 08:17
code
指针
C++可变参模板优雅的表示函数指针
目的我们的是将函数指针R(T::*
ptr
)(Args...)这种形式变成Functor(
ptr
)这种形式在一个同名函数有多个重载方法的时候,这样的方式会比较优雅。
qq_16952303
·
2023-11-04 02:48
C++
Qt
c++
变参模板
函数指针
QOverload
【带头学C++】----- 三、指针章 ---- 3.7 数组指针
例如:intarr[5]={10,20,30,40,50};//需求定义一个指针变量保存数组元素的地址int*
ptr
;
ptr
=&arr[0];
ptr
=arr;//arr作为地址第
程序小白Erike.
·
2023-11-04 02:43
C++从基础到抗大旗
c++
数据结构
开发语言
1024程序员节
c语言
C++智能指针使用陷阱、shared_
ptr
实现
一智能指针使用概述1.使用场景1.1unique_
ptr
1.1.1概念std::unique_
ptr
是通过指针占有并管理另一对象,并在unique_
ptr
离开作用域时释放该对象的智能指针。
lmy347771232
·
2023-11-03 23:03
C++
c++
开发语言
day02 c语言 动态分配
c语言动态分配malloc#include#includeintmain(){int*
ptr
=NULL;
ptr
=(int*)malloc(sizeof(int));if(
ptr
==NULL){printf
追寻远方的人
·
2023-11-03 21:42
C语言基础
智能指针的使用以及模拟实现
文章目录智能指针内存泄漏智能指针的使用和原理C++98/C++11智能指针auto_ptrunique_ptrshared_ptrweak_
ptr
删除器总结智能指针在C语言中,我们初识了指针这一概念,在
小王学代码
·
2023-11-03 21:48
C++
智能指针
C++
模拟实现
力扣面试题 02.07. 链表相交
代码如下:classSolution{public:ListNode*getIntersectionNode(ListNode*headA,ListNode*headB){ListNode*
ptr
=headA
Aurora_Galaxy
·
2023-11-03 15:16
力扣
链表
leetcode
算法
c++
数据结构
根据类成员获取类指针
templatesize_tmy_offsetof(constMP::*member){return(size_t)&(reinterpret_cast(0)->*member);}templateP*my_container_of_impl(M*
ptr
蓝黑墨水
·
2023-11-03 11:06
学习
c++
C++ 类 根据成员变量的指针获取类对象的指针
一.宏定义实现方式有多种,原理是相同的方式1:#defineget_class_
ptr
(memberPtr,classType,memberName)\((classType*)((char*)(memberPtr
小哈龙
·
2023-11-03 11:25
c++
开发语言
C/C++基础刷题易错(长期更新)
intarr[5]={0,1,2,3,4};intptr=arr;//int型的
ptr
指向int型的数组没错
ptr
++;//OK,
ptr
是左值.arr++;//Error,地址不能是左值,不能像指针一样做自增运算
coder_yz(ง •_•)ง
·
2023-11-03 10:09
C/C++
C
C++
面试
c++11 智能指针 unique_
ptr
、shared_
ptr
与weak_
ptr
原文地址:https://www.cnblogs.com/lsgxeva/p/7788061.htmlC++11中有unique_
ptr
、shared_
ptr
与weak_
ptr
等智能指针(smartpointer
Caiaolun
·
2023-11-03 10:41
C++引用和地址
示列代码:intQuickDemo::yingyong_test(Mat&image){inta=10;int&b=a;int*
ptr
=&b;std::cout<<*
ptr
<
ptr
思禾
·
2023-11-03 09:20
C/C++
c++
子类(虚函数,非虚函数)重写父类的函数(虚函数,非虚函数)等4种情况下的输出
includeusingnamespacestd;classparent{public:virtualvoids(){couts();ref.s();//正常的sons2;parentp2;//向下造型parent*
ptr
qq_43625764
·
2023-11-03 06:27
c++
小助手
vitual
虚函数
父类指向子类对象
C++知识查缺补漏
/1.引入vector#includeintmain(){//2.一维数组vectora;a.push_back(1);cout(a).swap(a),操作之后,容量会接近实际占用的Sizeauto_
ptr
topone37
·
2023-11-03 01:52
C++11之继承构造函数(using 声明)
regex_match、regex_search、regex_replace)C++11之线程库(Thread、Mutex、atomic、lock_guard、同步)C++11之智能指针(unique_
ptr
林夕07
·
2023-11-02 20:24
#
C++11
c++
开发语言
数据结构
[WUSTCTF2020]level1
/output.txt","rb")asfile:data=file.read()
ptr
=[0,198,232,816,200,1536,300,6144,984,51200,570,92160,1200,565248,756,1474560,800,6291456,1782,65536000
we have a whole life
·
2023-11-02 18:45
python
开发语言
re
C++基础语法——智能指针
目录1.智能指针存在的意义2.内存泄漏①什么是内存泄漏,内存泄漏的危害②内存泄漏分类③如何检测内存泄漏④如何避免内存泄漏3.智能指针的使用及其模拟实现①RAII②智能指针的原理③std::auto_
ptr
轩轩曲觞阁
·
2023-11-02 16:30
c++
指针
c++
指针运算笔试题解析(2)
指针运算笔试题解析题目一解析题目二解析压轴题(困难)解析题目一#includeintmain(){intaa[2][5]={1,2,3,4,5,6,7,8,9,10};int*
ptr
1=(int*)(&
蒋志昂
·
2023-11-02 14:24
指针
算法
c语言
数据结构
c++
Mysql MVCC详解
在Mysql中MVCC是在Innodb存储引擎中得到支持的,Innodb为每行记录都实现了三个隐藏字段:6字节的事务ID(DB_TRX_ID)7字节的回滚指针(DB_ROLL_
PTR
)隐藏的ID6字节的事物
张爱迪生
·
2023-11-02 10:45
mysql
mvcc
mysql
隔离级别
Linux系统编程(4)
调整内存分配的大小#includevoid*realloc(void*
ptr
,si
半路程序员
·
2023-11-02 07:45
linux
基于VS编译器探测成员函数指针的调用规则,并分析MFC消息映射实现机制的局限性问题
#includeusingnamespacestd;classB1{intb1;public:voidmfn1(){cout(df1);mB2fmb2f=static_cast(df2);D*
ptr
=newD
小小bugbug
·
2023-11-02 04:54
mfc
c++
C++进阶语法——智能指针【学习笔记(五)】
文章目录1、智能指针简介1.1原始指针(rawpointer)的⼀些问题1.2智能指针(smartpointers)2、智能指针(smartpointers)——unique_
ptr
2.1unique_
ptr
全息数据
·
2023-11-01 17:40
C++
c++
上一页
9
10
11
12
13
14
15
16
下一页
按字母分类:
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
其他