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
unique_ptr
C++智能指针
由于动态内存使用很容易出问题,例如忘记了释放内存造成内存泄漏,释放正在使用的内存造成非法内存访问等,为了更容易和安全地使用动态内存,标准库提供了三种智能指针来管理动态对象,shared_ptr允许多个智能指针指向同一个对象,
unique_ptr
土豆吞噬者
·
2023-06-07 13:36
C++面试
目录1.shared_ptr和
unique_ptr
区别,以及性能对比2.weak_ptr及其作用3.shared_ptr是线程安全的吗4.讲讲多态及实现机制5.虚基类6.多继承的时候,虚函数表指针怎么存
个人回收
·
2023-06-07 06:00
面经
c++
面试
开发语言
服务器
职场和发展
智能指针之
unique_ptr
(概述,初始化,成员函数用法,以及转化成shared_ptr)07
一unique_ptr1unique_ptr概述独占式的概念(所有权);同一时刻只能有一个
unique_ptr
指向这个对象(这块内存),当这个
unique_ptr
被销毁时,它所指向的对象也被销毁。
Mango酱
·
2023-06-07 05:53
C++新特性相关
指针
c++
C++11中的智能指针
unique_ptr
、shared_ptr和weak_ptr详解
3、在VisualStudio中查看智能指针的源码实现4、独占式指针unique_ptr4.1、查看
unique_ptr
的源码实现片段4.2、为什么
unique_ptr
的拷贝构造函数和复制函数被delete
dvlinker
·
2023-06-07 00:12
C/C++技术分享
C++
智能指针
unique_ptr
shared_ptr
weak_ptr
c++ 11 智能指针 解决内存泄露问题
文章目录一、shared_ptr1.1初始化1.2获取原始指针1.3指定删除器1.4下面是使用shared_ptr的一些注意事项:二、
unique_ptr
独占的智能指针2.1、
unique_ptr
独享所有权
老菜鸟的每一天
·
2023-04-21 13:41
c++
11
14
19
c++11
智能指针
【C\C++】C++11 智能指针所有使用场景及实例代码
线程间应用使用std::
unique_ptr
管理动态分配的对象,并在多个线程中共享:classMyObject{public:voiddoSomething(){//...}}
Michael_Good
·
2023-04-21 13:57
C++11
c++
c语言
开发语言
c++ 智能指针
c++有三种智能指针:shared_ptrweak_ptrunique_ptr头文件关于auto_ptr指针C++98提供了auto_ptr模板的解决方案,在c++11被弃用,c++17中彻底移除,用
unique_ptr
安牛牛牛
·
2023-04-20 23:00
c++
开发语言
C++:智能指针(auto_ptr/
unique_ptr
/shared_ptr/weak_ptr)
为什么需要智能指针?C++没有垃圾回收机制。#includeusingnamespacestd;intdiv(){inta,b;cin>>a>>b;if(b==0)throwinvalid_argument("除0错误");returna/b;}voidFunc(){//1、如果p1这里new抛异常会如何?//2、如果p2这里new抛异常会如何?//3、如果div调用这里又会抛异常会如何?int*
JDSZGLLL
·
2023-04-20 11:04
C++学习分享
c++
开发语言
C++ Primer第五版_第十三章习题答案(51~58)
文章目录练习13.51练习13.52练习13.53头文件CPP文件练习13.54练习13.55练习13.56练习13.57练习13.48练习13.51虽然
unique_ptr
不能拷贝,但我们在12.1.5
PaQiuQiu
·
2023-04-19 01:05
C++《i+1》
c++
开发语言
阿里巴巴面试题基础篇 C++基础篇(二)
●请你来说一下C++中的智能指针参考回答:C++里面的四个智能指针:auto_ptr,shared_ptr,weak_ptr,
unique_ptr
其中后三个是c++11支持,并且第一个已经被11弃用。
书山压力
·
2023-04-19 00:38
QObject对象生命周期管理
1.2从C++11开始,智能指针(shared_ptr、weak_ptr、
unique_ptr
)的
hss2799
·
2023-04-18 18:22
qt
开发语言
智能指针make_unique 与make_shared 的知识介绍
的构造及使用例程,MSDN的讲解非常详细(https://msdn.microsoft.com/zh-cn/library/dn439780.aspx)使用过程中,主要有这么几个关键点:1.make_unique同
unique_ptr
aFakeProgramer
·
2023-04-15 06:50
c++
C++单例模式
c++单例模式_c++单例模式_帅的没朋友~的博客-CSDN博客shared_ptr和
unique_ptr
可否用于单例模
smartDMer
·
2023-04-14 18:03
单例模式
c++
rust中的智能指针
C++中的智能指针我们知道有shared_ptr,
unique_ptr
,weak_ptr等。rust中你将进一步对智能指针的意义加深了解。
explore翔
·
2023-04-13 14:04
rust语言学习
rust
开发语言
后端
C++智能指针【shared_ptr】基本使用
一、概述C++标准模板库STL(StandardTemplateLibrary)一共给我们提供了四种智能指针:auto_ptr、
unique_ptr
、shared_ptr和weak_ptr,其中auto_ptr
芒种、
·
2023-04-12 19:43
C++基础/高级
指针
c++
内存管理
6、C++指针(三):智能指针与内存泄漏
目录一、内存泄漏二、智能指针概述三、auto_ptr四、
unique_ptr
五、shared_ptr六、weak_ptr七、引用关于函数传递参数类型一、内存泄漏什么是内存泄漏:指程序中已动态分配的堆内存由于某种原因程序未释放或无法释放造成系统内存的浪费
无休止符
·
2023-04-12 19:12
C++知识体系重构
c++
rust
开发语言
关于c++智能指针的一点认识
局部对象释放的时候会调用对象的析构函数,在析构函数里释放掉对象即可保证对象能够被安全的释放掉2、auto_ptr在c++中不建议使用,因为如果把指针A赋给B后,再调用A会出错,因为A已经是个空指针了3、
unique_ptr
only2xlr
·
2023-04-12 02:00
其他
c++
智能指针
16.6
unique_ptr
简介与常用操作
一:
unique_ptr
简介独占式的概念(专属所有权):同一时刻只能有一个
unique_ptr
指针指向这个对象(这块内存);当这个
unique_ptr
被销毁时候,它所指向的对象也被销毁格式
unique_ptr
zzyzxb
·
2023-04-11 19:06
c++学习
c++
C++中的智能指针和RAII机制
文章目录一、RAII机制二、智能指针三、
unique_ptr
一、RAII机制RAII(ResourceAcquisitionisInitialization)是由C++之父BjarneStroustrup
呦,又写BUG呢
·
2023-04-11 02:37
C/C++
c++
算法
开发语言
C++中智能指针(
unique_ptr
、shared_ptr、weak_ptr)详解
在C++中,有三种主要类型的智能指针:
unique_ptr
、shared_ptr和weak_ptr。unique_ptrunique_ptr是一种独占式智能指针,它只能拥有唯一的对
zpf1813763637
·
2023-04-10 16:22
C++
c++
开发语言
后端
服务器
C++的智能指针如何赋值
目录1.如何给新创建的智能指针赋值2.将普通指针赋值给智能指针3.智能指针赋值给智能指针shared_ptr互相之间赋值
unique_ptr
互相之间赋值1.如何给新创建的智能指针赋值智能指针初始化的方法如下所示
zhcnyuyang
·
2023-04-09 13:17
c++
开发语言
C++智能指针——
unique_ptr
系列文章目录C++11新特性大全+实例文章目录系列文章目录前言一、智能指针是什么?1.什么是智能指针2.为什么要使用智能指针3.智能指针有哪几种4.智能指针的使用特点二、unique_ptr1.构造及简单使用2.赋值3.传参4.基本方法5.自定义删除器详解1.为什么要使用自定义的删除器2.写法3.实例分析总结前言C++这门编程语言的历史可以追溯至1979年,当时的BjarneStroustrup(
山河君
·
2023-04-09 13:38
C++新特性
c++
智能指针
右值引用和完美转发,浅拷贝,深拷贝,移动
当然你需要理清楚当前数据是否为右值,或是当前其为一个左值,但后序都不会再用到它,我们利用move转换为右值进行资源转移(这还需要右值拷贝函数的支持)支持拷贝构造和右值拷贝构造,来支持STL中的高效处理主要突破点资源的转移(new,
unique_ptr
wuguinianjing
·
2023-04-07 16:50
C++
c++11
C++的智能指针
unique_ptr2、auto_ptr引入问题3、shared_ptr接口:4、weak_ptr参考文章:前言C++STL(StandardTemplateLibrary)一共提供了四种指针:auto_ptr、
unique_ptr
allen mirac
·
2023-04-07 02:11
c++
c++
开发语言
开发面经记录
weak_ptr,shared_ptr,
unique_ptr
的区别。堆,栈Static和const;const可以修改吗?
三七sanqi
·
2023-04-05 22:57
C++基础
C++实习生面试题
所作的项目有没有全部负责到底,有没有追求极致的精神2、探索域和知识面,是否额外涉猎知识3、单领域技术深度;操作系统和c++基础是否深入和扎实1、进程和线程的区别2、虚函数和纯虚函数的区别3、介绍下智能指针,
unique_ptr
麦峰强1
·
2023-04-04 21:14
自动驾驶
c++
开发语言
C++泛型编程:可变参数模板
make_unique,make_shared(用来创建管理一个新对象)模板都是这么定义的templatestd::unique_ptrmake_unique(Ts&&...params){returnstd::
unique_ptr
右大臣
·
2023-04-04 18:44
#
C++11
C++
c++
开发语言
智能指针的拷贝构造函数和移动构造函数的作用和目的
unique_ptruinque_prt的拷贝构造函数的作用和目的std::
unique_ptr
的拷贝构造函数的作用和目的是禁止拷贝语义,即不允许复制一个std::
unique_ptr
对象。
商汤科技
·
2023-04-04 15:58
c++
开发语言
C++11 智能指针
shared_ptr允许多个指针指向同一个对象;
unique_ptr
则“独占“所指向的对象。weak_ptr是一种若引用,指向shared_ptr所管理的对象。这三种类型都定义在memory头文件中。
_wauwa
·
2023-04-03 00:27
C++
c++
1024程序员节
linux
使用智能指针的注意事项
1.使用
unique_ptr
以替代auto_ptrauto_ptr是C++98标准库提供的一个智能指针,但已被C++11明确声明不再支持。
SigalHu
·
2023-04-01 01:53
C-C++
智能指针
c++
C++ 智能指针使用注意事项
unique_ptr
可以指向动态数组。
「已注销」
·
2023-04-01 01:25
c++
指针
c++智能指针
文章目录前言一、智能指针的种类二、智能指针的概述三、独占指针:unique_ptr1、
unique_ptr
三种创建方式1、通过已有裸指针创建2、通过new创建3、通过std::make_unique创建
夏季八起
·
2023-03-31 11:44
cpp基本语法
c++
开发语言
CMU 15-445 LAB 0 Trie
遇到的C++语法问题(C++语法是真的恶心)
unique_ptr
这里用到很多make_unique的创建方式,比如:InsertChildNode(key[i],std::make_unique(key
计科学习者
·
2023-03-31 09:59
数据库
1024程序员节
CMU15-445 Lab0 - C++ Primer
Lab0-C++Primer个人笔记
unique_ptr
、矩阵相乘、gdb等。
mrxs
·
2023-03-31 08:22
CMU
15-445
学习笔记
c++
git
数据库
Effective Modern C++ - 5: 右值引用/移动语义/完美转发
移动语义(1)替换高代价的copy(2)支持创建只允许move的类型:std::
unique_ptr
/std::future/andstd::thread完美转发带任意参数(左值/右值)的函数模板,保持参数的左
my_passion
·
2023-03-28 15:46
C++11智能指针(shared_ptr)
智能指针在C++11版本之后提供,包含在头文件中,shared_ptr、
unique_ptr
、weak_ptrshared_ptr的使用shared_ptr多个指针指向相同的对象。
宋大壮
·
2023-03-26 05:07
C++学习2
std::auto_ptrstd::auto_ptr指针在C++11标准中被移除了,可以使用
unique_ptr
来代替,功能上是相同的,
unique_ptr
相比较auto_ptr而言,提升了安全性(没有浅拷贝
fan_music
·
2023-03-25 10:08
C++
c++
学习
error: no template named '
unique_ptr
' in namespace 'std'
最近在windows端编译报错“error:notemplatenamed'
unique_ptr
'innamespace'std'”,一开始以为是vs2019版本的问题,后来又以为是window10sdk
panjinya
·
2023-03-24 16:10
Android C++的sp<>指针简介
本身不具备垃圾回收机制,而且指针也不具备构造函数和析构函数,所以为了实现内存(动态存储区)的安全回收,必须对指针进行一层封装,而这个封装就是智能指针,c++的智能指针有很多实现方式,有auto_ptr,
unique_ptr
deparks
·
2023-03-24 11:51
Android
Android
智能指针
C++11 智能指针
unique_ptr
,让资源管理更简单,更安全
总览轻量级行为基本和原始指针相同.大小默认:delete析构,大小和原始指针一样.实现支持构造和移动,不支持拷贝.数据采用tuple组合,组合类之间采用继承的方式.析构默认和自定义.使用工厂.不完整的成员指针变量.转换
unique_ptr
502203305
·
2023-03-22 14:32
Effectivve
Modern
Cpp
c++
安全
开发语言
这个c++库可以自动管理
unique_ptr
源:https://github.com/zgww/urgc恳请各位大佬点个starurgcuniquereferencegarbagecollect简介一个c++库。用法类似于智能指针,同时解决循环引用的问题,也不需要开发者特意标注强弱引用.初心c++性能极高,能充分利用机器的性能。随着c++的升级,加入了很多优秀特性,如lambda,协程,module,极大地提高了开发效率。但是内存管理还是很
正向反馈
·
2023-03-19 09:30
现代 C++:一文读懂智能指针
智能指针C++11引入了3个智能指针类型:std::
unique_ptr
:独占资源所有权的指针。std::shared_ptr:共享资源所有权的指针。
linjinhe
·
2023-03-18 02:54
吉比特sp专场面试
c++什么情况会内存泄漏有什么办法避免内存泄漏share_ptr和
unique_ptr
的区别为什么用智能指针能自动释放资源
unique_ptr
是怎么实现独占性的大致实现一下share_ptr(思路可以,
鲜橙
·
2023-03-13 03:49
std::
unique_ptr
使用incomplete type的报错分析和解决
Pimpl(Pointertoimplementation)很多同学都不陌生,但是从原始指针升级到C++11的独占指针std::
unique_ptr
时,会遇到一个incompletetype的报错,本文来分析一下报错的原因以及分享几种解决方法
MistEO
·
2023-02-06 05:30
第十六章 string类和标准模板库(2)智能指针模板类
1.使用智能指针(1)三个智能指针模板auto_ptr,shared_ptr,
unique_ptr
,都定义了类似指针的对象,可以将new获得的地址赋值给这些对象。
阿厉a_li
·
2023-02-05 12:41
C++11 原型模式示意
主要使用到的技术有std::move,和std::
unique_ptr
。
FredricZhu
·
2023-02-04 07:38
C++ 智能指针 : auto_ptr 、
unique_ptr
、 shared_ptr、 weak_ptr
1、智能指针设计初衷:智能指针实际是类,超过类的作用域后,析构函数会自动回收资源,为程序员管理申请的堆内存,避免内存泄漏2、C++智能指针种类:auto_ptr(C++98的⽅案,C11已抛弃)采⽤所有权模式。auto_ptr构造时取得某个对象的所有权,在析构时释放该对象。我们实际上是创建一个auto_ptr类型的局部对象,该局部对象析构时,会将自身所拥有的指针空间释放,所以不会有内存泄露。aut
半岛铁盒.
·
2023-01-06 18:06
c++
c++
开发语言
C++11 smart pointer 之
unique_ptr
uniqe_ptrunique_ptr源码链接定义于头文件template>classunique_ptr;(C++11起)templateclassunique_ptr;(C++11起)std::
unique_ptr
qt_dog
·
2023-01-06 10:19
c++11
c++
开发语言
智能指针 VS 引用
unique_ptr
的性能开销是最接近裸指针,很容易转换为shared_ptr。shared_ptr的大小是普通指针的两倍,因为多了一个控制块。引用计数是原子操作。
xieshangxin
·
2022-12-31 21:26
c++
开发语言
【C++】智能指针
.智能指针实现框架4.智能指针的发展历史二.智能指针的拷贝/赋值问题三.定制删除器(仿函数)1.new/new[]与delete/delete[]匹配问题2.定制删除器的简单实现四.auto_ptr/
unique_ptr
Hello_World_213
·
2022-12-09 16:12
C++
c++
开发语言
上一页
2
3
4
5
6
7
8
9
下一页
按字母分类:
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
其他