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
智能指针
C++
智能指针
C++
智能指针
C++11中
智能指针
的原理、使用、实现转shared_ptr的小文,shared_ptr赋值为a,再赋值为b,a的引用会减1,b的引用加1
菜鸟瞎编
·
2021-03-18 22:29
C++面试题
为什么C++默认的析构函数不是虚函数C++虚函数详解C++11中
智能指针
的原理、使用、实现C++进
菜鸟瞎编
·
2021-03-17 10:28
c++11
智能指针
(三)weak_ptr
弱引用指针weak_ptr是用来监视shared_ptr的,不会使引用计数加1或减1.它作为一个旁观者来监视shared_ptr管理的资源是否存在,也可以用来返回this指针或解决循环引用问题。它不共享指针,没有重载*和->,因此不能操作资源观察资源的常见用法#include#includeintmain(){std::shared_ptrsp=std::make_shared(10);std::
_gentle
·
2021-03-11 16:27
2022届字节跳动搜索算法实习生面经
一面(1h)自我介绍+项目介绍C++相关:
智能指针
的基本知识,boost库与锁其他:Java相关(不了解),Linux内存管理(不了解),TCP三次握手,降维的方法,统计学习LR的公式算法题:用两个栈实现队列的功能概率题
Jiaxi_Cao
·
2021-02-19 23:49
算法
数据结构
c++
c++
智能指针
基础详解
简介在现代C++编程中,标准库包含了
智能指针
(Smartpointers)。
智能指针
用来确保程序不会出现内存和资源的泄漏,并且是"异常安全"(exception-safe)的。
·
2021-02-18 20:20
C++ 中的
智能指针
-基础
简介在现代C++编程中,标准库包含了
智能指针
(Smartpointers)。
智能指针
用来确保程序不会出现内存和资源的泄漏,并且是"异常安全"(exception-safe)的。
·
2021-02-18 18:38
c++
《More Effective C++》总结笔记(二)——异常
异常条款9:利用destructors避免泄露资源只要坚持这个规则,把资源封装在对象内(类似
智能指针
shared_ptr),通常便可以在exceptions出现时避免泄露资源。
·
2021-02-15 13:18
c++异常处理
智能指针
:什么是shared_ptr类和weak_ptr类
我们从之前对于auto_ptr和unique_ptr介绍可以的知:已经消失的
智能指针
——auto_ptr:https://blog.csdn.net/qq_46423166/article/details
双鱼座boyy
·
2021-02-13 00:35
C/C++学习
指针
内存管理
C++
智能指针
——unique_ptr
unique_ptr和auto_ptr类似。但是unique_ptr拥有它指向的对象。某个时刻只能有一个unique_ptr指向一个给定对象。当unique_ptr被销毁时,它所指向的对象也被销毁。初始化:必须采用直接初始化形式:不能调用赋值或拷贝构造函数,避免了两个指针指向同一块地址的问题,避免了auto_ptr一定的错误。但是仍然可以用其他方法:int*x=newint(10);unique_
双鱼座boyy
·
2021-02-10 00:49
C/C++学习
c++
数据结构
已经消失的
智能指针
——auto_ptr
出现问题:不能确保在正确的时间释放它:有时候我们会忘记释放内存,这种情况下会产生内存泄漏有时候再尚有指针引用内存的时候指针被释放了因此就出现了
智能指针
,帮助我们进行指针的释放。
双鱼座boyy
·
2021-02-09 22:22
C/C++学习
指针
c++
内存管理
《More Effective C++》总结笔记(二)——异常
异常条款9:利用destructors避免泄露资源只要坚持这个规则,把资源封装在对象内(类似
智能指针
shared_ptr),通常便可以在exceptions出现时避免泄露资源。
·
2021-02-05 21:15
c++异常处理
c++11 新特性——
智能指针
使用详解
c++11添加了新的
智能指针
,unique_ptr、shared_ptr和weak_ptr,同时也将auto_ptr置为废弃(deprecated)。
·
2021-02-05 11:59
第九课.指针(四)
目录
智能指针
auto_ptr
智能指针
unique_ptrshared_ptr和weak_ptr引用使用指针是危险的行为,可能存在野指针问题,可能造成内存泄漏事故,但指针是高效的,所以需要一种更安全的方式使用指针
tzc_fly
·
2021-01-28 16:48
白景屹C++学习记录
指针
内存管理
内存泄漏
c++
2021届春招实习生字节跳动面经(已上岸)
2020.4.15投递客户端iOS开发岗位,无笔试2020.4.22技术一面聊项目指针和引用
智能指针
weak_ptr存在野指针的问题吗多态的实现虚函数的实现虚函数表,存放在哪里httphttps如何保证安全
北冥有鱼s
·
2021-01-13 16:21
面经
面试
ios
指针深度剖析——深入浅出解读悬空指针和指向指针,告诉你为什么不能没有指针
但是,有那么多神奇的
智能指针
!
linux亦有归途
·
2021-01-11 16:51
指针
堆栈
c++
初学者
智能指针
智能指针
一级目录二级目录三级目录一级目录为什么要用
智能指针
?
-小淮要努力
·
2021-01-03 22:29
智能指针
c++
如何实现一个简单的
智能指针
所谓
智能指针
指的是一种用起来像指针但又无需关心内存管理的一种机制。
码农的荒岛求生
·
2021-01-01 13:13
c++
TarsCpp 组件 之
智能指针
详解
通过
智能指针
可以优雅地管理内存,让开发者只需要关注内存的申请,内存的释放则会被自动管理。
TARS基金会
·
2020-12-04 18:54
c++
后端
打造可复用的数据结构库——1
智能指针
1为什么有
智能指针
对于C/C++的程序,时刻要绷着一根玄,就是内存泄漏问题。这个工程肯定要用到指针。为了能方便后续程序的开发,先建立一个
智能指针
的类。
蚂蚁@啃骨头
·
2020-11-23 00:56
数据结构
c++
golang GC(垃圾回收机制
常见的垃圾回收方法引用计数(referencecounting)这是最简单的一种垃圾回收算法,和之前提到的
智能指针
异曲同工。
青蛙是坏蛋
·
2020-10-18 13:09
语言开发
golang
go
软件开发
C++
智能指针
RAII:C++中一个对象出了其作用域就会被自动析构,只要在构造函数时候申请空间,析构函数时候释放空间,围绕着构造和析构进行操作。深拷贝:每一个对象的指针都有指向的内存空间,而不是共享,对象析构时不存在重复释放或者内存泄漏的问题;内存开销大浅拷贝:通过拷贝构造函数实例化的对象的指针数据变量指向的共享的内存空间,内存开销小;对象析构时可能会重复释放或造成内存泄漏。通过引用计数,减少了内存开销,又避免
365_9163
·
2020-10-13 10:41
Linux 内存笔记基础
Corba/MQ)webserviceOpenGL内存管理硬件层次内存结构管理内核层次内存映射堆扩展语言层次c:mallocc++:newdelete数据结构STL(对共享内存有问题,还有线程内存有些问题)
智能指针
猫爪
·
2020-10-11 12:14
如何选择
智能指针
?
如果有多个指针指向同一对象的话,你应该使用shared_ptr;如果一个对象只需要一个
智能指针
,那你应该是用unique_ptr。
Stroman
·
2020-10-09 16:31
C++11
智能指针
C++11
智能指针
为什么要使用
智能指针
:
智能指针
的作用是管理一个指针,因为存在以下这种情况:申请的空间在函数结束时忘记释放,造成内存泄漏。
一个勤奋的Coder
·
2020-09-17 07:47
c++
C++11__共享型
智能指针
的一种靠谱的简单实现
C++11__共享型
智能指针
的一种靠谱的简易实现 实现共享型
智能指针
的关键在于共享计数,这里利用资格资源管理类实现共享计数的相关操作。
AlexanderGan
·
2020-09-17 07:09
C/C++
c++
c++11
C++实战(一)简易文本搜索
通过该实战,可以巩固标准库相关内容的学习,还加固了
智能指针
的使用。1.首先,定义了查询类的头文件。
Rise*3
·
2020-09-17 07:46
c++
c++
实践
C++11 shared_ptr共享
智能指针
1.shared_ptr基本使用方法1.1初始化#include//
智能指针
初始化std::shared_ptrp(newint(20));coutp2=p;coutp3=std::make_shared
m_buddy
·
2020-09-17 07:14
[2]
C++
STL
C++11 shared_ptr详解
C++11模板库的头文件中定义的
智能指针
,即shared_ptr模板,就是用来部分解决这个问题的。
键盘小王子
·
2020-09-17 06:51
c++
指针
c++
内存管理
多态
【C++11新特性】 C++11
智能指针
之unique_ptr
原创作品,转载请标明:http://blog.csdn.net/Xiejingfa/article/details/50759210在前面一篇文章中,我们了解了C++11中引入的
智能指针
之一shared_ptr
Fred^_^
·
2020-09-17 06:46
C++拾遗
【C++11新特性】 C++11
智能指针
之shared_ptr
转自https://blog.csdn.net/Xiejingfa/article/details/50750037C++中的
智能指针
首先出现在“准”标准库boost中。
Endless丶Go
·
2020-09-17 06:10
转载的博客
C++
我的C++primer长征之路:动态内存
文章目录动态内存C++内存分配模型静态全局变量、全局变量、静态局部变量、局部变量的区别直接管理内存malloc/new、free/delete的区别
智能指针
shared_ptrunique_ptrweak_ptr
静待梅花开
·
2020-09-17 00:40
C\C++\Linux
c++
内存管理
Effective C++学习笔记(三)
条款13用对象来管理资源为防止资源泄露,使用资源管理对象来构造资源和析构资源,最好在获取资源的同时进行初始化(RAII)最常见的资源管理对象为
智能指针
,std::auto_ptr与std::shared_ptr
_Maple_H
·
2020-09-16 22:43
C++学习
一文梳理C++
智能指针
c++
智能指针
主要是解决内存管理的问题,比如我们newdelete需要成对的使用,否则会发生内存泄漏,
智能指针
很大程度上可以解决这个问题,
智能指针
是一个类,当超出了类的作用类时,类会自动调用析构函数进行释放
Robert Wang
·
2020-09-16 21:43
C++合集
处理管理共享对象指针的类—enable_shared_from_this(STL源码)
使用参考:https://blog.csdn.net/caoshangpa/article/details/79392878以下模板函数_Enable_shared被调用处为:
智能指针
被构造(_Resetp0
ztq小天
·
2020-09-16 19:11
智能指针
STL
智能指针
std::auto_ptr和tr1:shared_ptr用法
下面通过一个工厂函数(createInvestment())返回一个特定的investment对象:Investment*createInvestment();见如下函数:voidf(){Investment*pInv=createInvestment();....deletepInv;}上面的程序会有以下危险:1>...区域内的一个过早的return语句,控制流将不会触及delete语句2>或c
alibo2008
·
2020-09-16 14:57
c/c++
C++
智能指针
shared-ptr,unique_ptr和weak-ptr
C++11中的
智能指针
在C++11中有四种只能指针,auto_ptr,shared-ptr,unique_ptr和weak-ptr。其中auto_ptr有和多不足之处,在C++11中已经建议废弃使用。
yhcfly
·
2020-09-16 06:11
C/C++内存管理
C++11
android的
智能指针
在Android的源代码中,经常会看到形如:sp、wp这样的类型定义,这其实是Android中的
智能指针
。
智能指针
是C++中的一个概念,通过基于引用计数的方法,解决对象的自动释放的问题。
wangfucai
·
2020-09-16 06:19
Android
C++ boost
智能指针
weak_ptr
weak_ptr:weak_ptr是为了配合shared_ptr而引入的一种
智能指针
,它更像是shared_ptr的一个助手而不是
智能指针
,因为它不具有普通指针的行为,没有重载operator*和->,
Rain-晴天
·
2020-09-16 06:59
c++
智能指针
unique_ptr,shared_ptr,weak_ptr
c++中使用new在堆上创建的对象,必须使用delete进行销毁,否则就会内存泄漏。有时候你会不经意间忘记了delete。就算你没有忘记delete,而程序在delete之前出现异常,那就会造成delete语句没有执行。如下:int*pi=newint(10);//doSomethingdeletepi;如果doSomething出现了异常,就会造成deletepi不能执行,从而造成内存泄露。所以
褚金辉
·
2020-09-16 05:33
boost
C++11
智能指针
shared_ptr,unique_ptr和weak_ptr的理解
shared_ptr允许多个指针指向同一个对象unique_ptr独占所指向的对象weak_ptrshared_ptr的弱引用shared_ptr描述(inmemory):shared_ptr是一个标准的共享所有权的
智能指针
gcc2018
·
2020-09-16 05:20
[内存管理]
智能指针
的好帮手weak_ptr
weak_ptr是为配合shared_ptr而引入的一种
智能指针
,它更像是shared_ptr的一个助手,而不是
智能指针
,因为它不具有普通指针的行为,没有重载operator*和operator->,它的最大作用在于协助
ajioy
·
2020-09-16 05:24
MFC/STL/Boost
C++11之
智能指针
shared_ptr/unique_ptr/weak_ptr
为了更加容易(更加安全)的使用动态内存,引入了
智能指针
的概念。
智能指针
的行为类似常规指针,重要的区别是它负责自动释放所指向的对象。
你的游戏我的妃
·
2020-09-16 05:25
C/C++
C++
智能指针
auto_ptr、unique_ptr、shared_ptr、weak_ptr
转自:https://www.nowcoder.com/tutorial/93/a34ed23d58b84da3a707c70371f59c21
智能指针
的作用是管理一个指针,因为存在以下这种情况:申请的空间在函数结束时忘记释放
chomol
·
2020-09-16 05:25
个人mark
C++
关于
智能指针
析构函数原理随笔(不能析构动态数组)
总所周知,在std中有着auto_ptr和shared_ptr,其中auto_ptr是只允许被一个指针所使用,即“受auto_ptrs管理的资源必须绝对没有一个以上的auto_ptr同时指向它”,也就是无论是拷贝构造或者赋值时都会让原来的指针为null。举个例子:std::auto_ptrpINv1(newint(1));std::auto_ptrpINv2(pINv1);//现在pINv2只向资
昨夜的秋天
·
2020-09-16 02:47
C++随笔
shared_ptr与weak_ptr(解决循环引用)
原创:https://blog.csdn.net/ingvar08/article/details/79200424shared_ptr是带引用计数的
智能指针
,可以说大部分的情形选择用shared_ptr
znzxc
·
2020-09-16 00:12
c++
share_ptr使用注意事项
智能指针
可以提供对动态内存安全而又方便的管理,但这建立在正确使用的前提下。为了正确使用
智能指针
,我们必须坚持一些基本规范。
zhubaohua_bupt
·
2020-09-16 00:05
C++
C++
智能指针
shared_ptr 和 unique_ptr浅析
文章目录C++
智能指针
shared_ptr和unique_ptr浅析1.入门1.1思路1.2实现2.shared_ptr和unique_ptr2.1基本的规则2.2`shared_ptr`的使用2.3unique_ptr2.4
xdesk
·
2020-09-16 00:19
C++语言编程
c++
C++ shared_ptr的模拟实现
一、shared_ptr的模拟实现我在之前的博客《
智能指针
》中有说过shared_ptr的原理,那么这篇博客,我们模拟实现一个shared_ptr,让大家能更好的理解它的原理。
镜中月ss
·
2020-09-16 00:17
C++
c++
C++——
智能指针
shared_ptr的实现
起初,我最直观的设计想法,直接设计一个类:包含全部要素(对象,指针计数)。然后提供出去。1classCPoint2{3public:4CPoint(intxVal=0,intyVal=0):x(xVal),y(yVal){}5intgetX()const{returnx;}6intgetY()const{returny;}7voidsetX(intxVal){x=xVal;}8voidsetY(i
weixin_30871905
·
2020-09-16 00:55
c/c++
实现一个简单的shared_ptr
一般来说,
智能指针
的实现需要以下步骤:1.一个模板指针T*ptr,指向实际的对象。2.一个引用次数(必须new出来的,不然会多个shared_ptr里面会有不同的引用次数而导致多次delete)。
weixin_30378623
·
2020-09-16 00:56
上一页
26
27
28
29
30
31
32
33
下一页
按字母分类:
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
其他