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
share_ptr
大厂面试重要C++知识(三)—— 智能指针
目录一、前言二、智能指针三、auto_ptrauto_ptr基本操作智能指针赋值四、unique_ptr五、
share_ptr
六、weak_ptr解决互相引用问题七、总结一、前言C/C++最让人诟病的特性之一
暗夜无风
·
2024-02-10 13:05
C/C++
c++
内存管理
智能指针
指针
面试
c++11 智能指针底层原理和代码模拟实现
目录内存泄漏的危害如何避免内存泄漏智能指针的使用及原理RAII智能指针的原理c++库中3个智能指针auto_ptr(简单实现)unique_ptr(简单粗暴的防止拷贝)
share_ptr
为什么需要智能指针
高高__
·
2024-02-07 09:34
c++
开发语言
C++11:智能指针
智能指针文章目录智能指针智能指针的类型1.auto_ptr2.unique_ptr3.shared_ptrshare_ptr特点
share_ptr
问题4.weak_ptrweak_ptr特点weak_ptr
摸鱼呀
·
2024-01-29 17:42
C++11新特性
c++
开发语言
8-C++的nullptr、 自动类型推导 、进制输出、设置场宽相关知识点
目录
share_ptr
其他nullptr自动类型推导进制输出设置场宽
share_ptr
一个资源在多个指针之间共享,每当有一个智能指针管理资源的时候,使用计数加1,当一个智能释放管理权的时候,使用计数减1
Summer_taotao
·
2024-01-10 01:32
c++
算法
数据结构
条款20 当
share_ptr
悬空用weak_ptr
weak_ptr主要是监视问你有没有资源但是没有资源的所有权
share_ptr
是有所有权下面是循环引用的例子
小凡子空白在线学习
·
2023-12-21 13:31
c++
c++系列:智能指针
share_ptr
,unique_ptr,weak_ptr
share_ptr
作用:相当于一个容器,托管堆指针,实现智能释放堆内存,支持同个堆指针被多个容器托管原理:利用容器临时变量的销毁,触发析构函数,将引用计数减少,引用计数为0则将堆指针安全释放初始化:share_ptrptrA
流木_5928
·
2023-12-16 02:21
C++11中智能指针的使用
share_ptr
:共享的智能指针weak_ptr:配合
share_ptr
使用的弱指针unique_ptr:独占的智能指针2.智能指针用于动态数组的管理2.1unique_ptr管理动态数组unique_ptrup
大侠后花园
·
2023-11-14 17:00
C++基础
C++智能指针的使用:shared_ptr、weak_ptr、unique_ptr的使用,使用案例说明。
系列文章目录本章内容:(1)shared_ptr、weak_ptr、unique_ptr的介绍(2)单独使用
share_ptr
造成的内存泄漏(3)shared_ptr和weak_ptr的配合使用文章目录系列文章目录前言一
暴躁茹
·
2023-11-12 03:00
C++基本知识
c++
开发语言
算法
【C++】智能指针:auto_ptr、unique_ptr、
share_ptr
、weak_ptr(技术介绍 + 代码实现)(待更新)
文章目录0.概述智能指针,智能在哪儿?RAII的介绍四个智能指针的特点:1.auto_ptr(C++98)核心功能的简单实现2.unique_ptr(C++11)核心功能的简单实现3.shared_ptr(C++11)核心功能的简单实现0.概述智能指针,智能在哪儿?使用了模板类,建立的是智能指针对象,自动调用智能指针类型的构造和析构函数。也就是说,对于动态开辟的空间如果用智能指针保存,就不需要手动
TTang-sq
·
2023-10-29 05:56
C++
c++
java
jvm
C/C++面试常见问题(二)
智能指针模板:auto_ptr、unique_ptr、
share_ptr
,weak_pre(本文不作讨论),定义了类似于指针的对象。在智能指针过期时让他的析构函数删除指向的内存。智能
心海徐帆
·
2023-10-21 03:06
C++
C++
C++面试
智能指针
类对象初始化
explicit构造函数
手写最简单的线程池
threadsafe_queue.hpp://实现线程安全的队列容器(通过封装一个queue)//成员变量://1.通过mutex互斥对pop、push操作加锁,从而实现“安全”//2.内部封装的queue,queue容器内部存储
share_ptr
小猴啊0.0
·
2023-10-09 07:11
c++
C++并发编程
学习
share_ptr
引用计数
1share_ptr引用std::shared_ptr是C++11及以后版本中提供的智能指针类型之一,它允许多个std::shared_ptr对象共享所有权(ownership)的一个对象。当没有任何std::shared_ptr`对象指向该对象时,该对象将被自动删除。与裸指针(rawpointer)相比,std::shared_ptr的优点在于它可以自动管理对象的生命周期,从而减少内存泄漏和其它
yalipf
·
2023-10-08 06:02
C++
share_ptr
智能指针使用详解
share_ptr
智能指针,也被称为共享指针,用于管理可以由多个智能指针共同拥有的动态分配对象。特别是,类型shared_ptr用于管理T类型对象的所有权。
肥嘟嘟的左卫门
·
2023-10-08 06:02
C++基础知识
share_ptr
C++ Primer Plus:第十六章 - string类和标准模板库
模板auto_ptr、unique_ptr和
share_ptr
。标准模板库(STL)。容器类。迭代器。函数对象(functor)。STL算法。模板initiaslzer_list。
我是一片小树叶
·
2023-10-04 09:45
C++
基础构建
string类和标准模板库
C++智能指针
share_ptr
/make_sharedref:C++——智能指针智能指针why裸指针很危险,忘记释放很容易造成内存泄漏。
聪明的王二狗
·
2023-08-17 08:07
C++
c++
C++笔记之单例模式
C++笔记之单例模式参考笔记:C++笔记之call_once和once_flagcodereview文章目录C++笔记之单例模式1.返回实例引用2.返回实例指针3.单例和智能指针
share_ptr
结合4
笑鸿的学习笔记
·
2023-08-12 10:53
c++
笔记
单例模式
C++ 智能指针
auto_ptrunique_ptrshared_ptrweak_ptr智能指针的核心实现unique_ptr的简单实现Counter的简单实现
share_ptr
的简单实现weak_ptr简单实现shared_ptr
lliuhao--
·
2023-08-04 13:30
c/c++
c++
java
开发语言
条款13: 以对象管理资源
两个常被使用的RAIIclasses分别是tr1::
share_ptr
和auto_ptr,前者通常是较佳选择,因为其copy行为比较直观。若选择auto_ptr,复制动作会使他们指向null。
奋起的熊猫
·
2023-07-22 13:49
Effective
C++
c++
C++智能指针(3/3)
目录上一节内容
share_ptr
用法
share_ptr
指针可以用于上一节所说的错误例子(类定义)主函数代码执行的结果解释说明
share_ptr
相关构造空的share指针可以指向其他相同类型的变量来进行托管可以
木木em哈哈
·
2023-07-19 02:32
c/c++
c++
开发语言
C++雾中风景14:CRTP, 模板的黑魔法
1.1:std::enable_shared_from_this类C++11引入了一个典型的CRTP的类:std::enable_shared_from_this当我们有类需要被智能指针
share_ptr
长布
·
2023-06-13 10:10
C++——智能指针auto_ptr、unique_ptr、
share_ptr
、weak_ptr
auto_ptr相对于普通指针分配内存,需要自己newanddelete,若不delete,就会造成内存泄露。auto_ptr智能指针可以做到,指针失效时自动回收内存空间。该指针可以进行复制构造与赋值构造,所以可能造成两个(或多个)指针指向同一内存空间的情况,导致内存空间被释放两次(或多次),造成错误。unique_ptr为了改进auto_ptr的漏洞,unique_ptr智能指针不允许复制构造与
Your_Julia
·
2023-06-08 14:36
C++
C++ 11 _智能指针
移除了auto_ptr然后重新引用了shared_ptr,unique_prt,weak_ptr等智能指针1shared_ptr共享智能指针(头文件memory)1.1关于shared_ptrstd::
share_ptr
weixin_44387482
·
2023-04-12 19:44
C++
c++
智能指针
share_ptr
的若干问题
一什么是智能指针c++的智能指针是利用了c++的RAII机制,这样可以及时的释放资源,且即使代码中触发了异常,也不会因为忘记写delete而没有释放内存。智能指针提供了一种同一资源管理的方式,就像是资源的proxy,智能指针内部维护了一个对资源的引用计数,每当被拷贝时就加一,被释放时减一。二正确的智能指针实例classB;classA{public:A(){coutap(newA());share
飞翃荷兰人
·
2023-03-24 09:22
吉比特sp专场面试
c++什么情况会内存泄漏有什么办法避免内存泄漏
share_ptr
和unique_ptr的区别为什么用智能指针能自动释放资源unique_ptr是怎么实现独占性的大致实现一下
share_ptr
(思路可以,
鲜橙
·
2023-03-13 03:49
C++智能指针的实现原理(上)
这是最核心的特征,紧随其后的unique_ptr,
share_ptr
这些进阶版的指针封装类型无不立足于此具有基本指针类型的行为特征,引用和解引用,运算符*,->的支持//yourauto
东方胖
·
2022-11-30 20:45
C++ 智能指针
auto_ptrunique_ptrshared_ptrweak_ptr智能指针的核心实现unique_ptr的简单实现Counter的简单实现
share_ptr
的简单实现weak_ptr简单实现shared_ptr
TABE_
·
2022-11-04 19:44
C++基础知识
c++
智能指针
uniqe_ptr实现
share_ptr实现
std::enable_shared_from_this的用法
有些类的成员函数需要获得自身的std::shared_ptr,但不能就地从this创建,这样会导致多个毫无关系的智能指针引用到同一个对象,导致重复释放【不能传递
share_ptr
,因为这样会造成2个以上非共享的
左图右码
·
2022-06-23 10:56
C++智能指针
智能指针RAII智能指针①auto_ptr②unique_ptr③
share_ptr
循环引用④weak_ptr定制删除器RAIIRAII(ResourceAcquisitionIsInitialization
TZC⑥
·
2022-03-15 08:19
C++
c++
开发语言
visualstudio
C++内存管理介绍
值得庆幸的是C++标准委员会给我们提供了auto_ptr智能指针,后面又引入了
share_ptr
以
·
2022-01-06 10:02
20210531-C++面试
share_ptr
智能指针,利用引用计
茴薏
·
2021-05-31 19:14
c++
2022届字节跳动搜索算法实习生面经
boost库与锁其他:Java相关(不了解),Linux内存管理(不了解),TCP三次握手,降维的方法,统计学习LR的公式算法题:用两个栈实现队列的功能概率题:圆上任取三个点,组成锐角三角形的概率1.智能指针
share_ptr
Jiaxi_Cao
·
2021-02-19 23:49
算法
数据结构
c++
share_ptr
使用注意事项
智能指针可以提供对动态内存安全而又方便的管理,但这建立在正确使用的前提下。为了正确使用智能指针,我们必须坚持一些基本规范。1避免同一块内存绑定到多个独立创建的shared_ptr上,因此要不使用相同的内置指针初始化(或reset)多个智能指针,不要混合使用智能指针和普通指针,坚持只用智能指针。2不deleteget()函数返回的指针,因为这样操作后,shared_ptr并不知道它管理的内存被释放了
zhubaohua_bupt
·
2020-09-16 00:05
C++
C++之shared_ptr总结
Share_ptr
也是一种智能指针。类比于auto_ptr学习。所以推荐先学习auto_ptr,再来学习shared_ptr。本博客的前两个就是auto_ptr的总结。希望感兴趣的朋友可以看看。
jqdy
·
2020-09-15 23:23
C/C++
share_ptr
使用
内存管理之
share_ptr
引子初始化sahred_ptr关于get()函数关于make_shared函数:shared_ptr的拷贝和赋值容器中的shared_ptr-记得用erease节省内存状态共享
sinat_39628214
·
2020-09-15 23:56
内存管理
boost::
share_ptr
智能指针使用示例
本文出自“对影成三人”博客,请务必保留此出处http://ticktick.blog.51cto.com/823160/196765最近项目中使用boost库的智能指针,感觉智能指针还是蛮强大的,在此贴出自己学习过程中编写的测试代码,以供其他想了解boost智能指针的朋友参考,有讲得不正确之处欢迎指出讨论。当然,使用boost智能指针首先要编译boost库,具体方法可以网上查询,在此不再赘述。智能
simtwo
·
2020-09-15 23:19
关于指针类型转换
但是对于
share_ptr
不能使用诸如static_cast(p.get())的形式,这将导致转型后的指针无法再被shared_ptr正确管理。
紫轩小筑
·
2020-08-25 01:57
面试2
新增一些智能指针;更多细节可以看我这篇博客https://blog.csdn.net/lishun1422840684/article/details/100013684说了这几点,面试官就打断了我,问了我
share_ptr
很黑的黑
·
2020-08-22 12:27
笔试面试题
笔试
面试
share_ptr
的 知识梳理
share_ptr
的知识梳理笔记最近学习
share_ptr
的时候发现这是个很有用的智能指针,无论是内存管理还是线程安全,以及自定义删除器,所以觉得还是记录分享一下,同时也巩固一下自己的学习成果1,
share_ptr
古人说
·
2020-08-20 02:08
C++
基础知识
智能指针
share_ptr
使用过程中需要注意的几点
主要说下
share_ptr
的几个注意点,待补全。
鱼思故渊
·
2020-08-18 18:42
C++
c++11中的shared_from_this()
shared_from_this()c++11中的shared_from_this()来源于boost中的enable_shared_form_this类和shared_from_this()函数,功能为返回一个当前类的std::
share_ptr
曾柯
·
2020-08-16 10:21
c++学习
Resource Acquisition is Initialization (RAII)
TableofContents1.Exampleof`Mutex_lock()`1.1BadPerformance1.2GoodPerformance2.Exampleof`std::
share_ptr
anArkitek
·
2020-08-14 16:59
C/C++
共享型智能指针的实现share_pointer
智能指针是一个类,它产生的是一个类对象,而不是一个原生的指针对象,但是为了减少类对象与针对对象使用的差异性,所以
share_ptr
类故意重载了两种常见的指针操作符:*和->。
Turing_Sunshine
·
2020-08-05 11:20
C++程序
std::move解决Boost::
share_ptr
的多重析构问题
使用vector容器存储boost::
share_ptr
变量,当我们想要通过调用vector中的方式clear()时,会发现boost::
share_ptr
并没有被释放,而我们可以通过std::move
泥石流中的一股清流
·
2020-08-05 10:22
C++编程
share_ptr
vector
std::shared_ptr
std::
share_ptr
允许多个指针执行同一个对象当指向对象的最后一个shared_ptr被销毁时,
share_ptr
类会自动销毁此对象。
master-dragon
·
2020-08-05 10:45
C++
C++11中使用std::
share_ptr
管理指向普通类型指针的动态数组时一点注意
参考文章:shared_ptrtoanarray:shoulditbeused?在创建指向普通类型的动态数组时,需指定对应的删除函数如:templatestructarray_deleter{voidoperator()(Tconst*p){delete[]p;}};std::shared_ptrsp(newint[10],array_deleter());或者//使用Std的删除函数std::s
humadivinity
·
2020-08-05 10:09
C++基础知识
c++智能指针
介绍c++中常用的3个智能指针:
share_ptr
,weak_ptr,unique_ptr。[注:所在头文件]一本人最常用的——
share_ptr
构造:shared_ptrp1(newT(
超级无敌大泡泡
·
2020-08-05 10:10
编程小知识
share_ptr
的正确使用方法
实在是看不惯度娘出来的shareptr的例子,没有实用性,而且还不清晰,举一个场景如下:假设游戏玩家登陆时要登记到一个管理用的vector中,登出时删除,程序如下:注意对象时在函数结束时才被释放的。#include#include#include#include#include#includeusingnamespacestd;classplayer;typedefboost::shared_pt
_stdHans
·
2020-08-05 10:29
boost
STL
C/C++
【求职】腾讯 C++方向面经
3.weak_ptrauto_ptr,auto_ptr拷贝对象悬空问题unique_ptr,unique_ptr的实现
share_ptr
,shared_ptr引用计数,以及循环引用问题(如何解决)4.C
瑞 新
·
2020-07-06 04:34
#
职读面经
C++之shared_from_this()
79108690c++11中的shared_from_this()来源于boost中的enable_shared_form_this类和shared_from_this()函数,功能为返回一个当前类的std::
share_ptr
天是蓝蓝的天
·
2020-07-04 20:59
C++
比较隐秘的内存问题
share_ptr
/auto_ptr避免这样使用:强引用上的回环指针会导致内存泄露,可在destructor人为拆散症状:方便的话在ref_count加个打印就知道了,可以在对象析构加打印提醒是否有对象一直没被析构
linxuping
·
2020-07-02 08:52
c++
上一页
1
2
下一页
按字母分类:
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
其他