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
智能指针auto_ptr
Rust能力养成系列之(42):内存管理:引用计数
智能指针
(下) 火星小海马
前言接着上篇的内容,我们继续Rc有所忘怀的读者,可以翻出上一篇再看一下。上篇提及要修改一种结构。这里有一种做法:那就是可以把Rc利用downgrade方法降级到Weak类型,后者也可以通过upgrade方法升级到前者类型。downgrade的方法总是有效的。但当在Weak上调用upgrade时,实际值可能已经被删除,在这种情况下,将得到一个None。这时在上篇末尾的代码中添加一个弱指针//rc_w
海数据实验室
·
2021-04-29 21:02
智能指针
&instance单例式
1,
智能指针
,shared_ptrnav(){returnnav_};std::shared_ptrnav_=nullptr;放在.cpp中if(!
chen_zan_yu_
·
2021-04-27 11:48
C++
【GeekBand】C++面向对象高级编程-第四周笔记
non-explicit-one-argumentctor可隐式转换单一形参构造函数3.explicit-one-argumentctor非隐式转换单一形参构造函数4.两种特殊的类4.1.pointer-likeclass
智能指针
茶色少年
·
2021-04-26 01:41
Rust能力养成系列之(41):内存管理:引用计数
智能指针
(上)
前言Rust的所有权规则(ownershiprule)允许在给定的范围内一次只存在一个所有者。但是,在某些情况下,需要与多个变量共享类型。例如,在GUI库中,每个子小部件(childwidget)都需要有一个对其父容器小部件(parentcontainerwidget)的引用,以便根据来自用户发起的的调整大小事件(resizeevent)对子小部件进行布局。虽然生命周期允许开发者通过将父节点存储为
海数据实验室
·
2021-04-25 21:50
条款13 以类管理对象
两个常被使用的RAIIclasses分别是tr1::shared_ptr和
auto_ptr
。前者通常是较佳选择,因为copy行为比较直观。若选择
auto_ptr
,复制动作会使它(原指针)指向null。
Songger
·
2021-04-24 08:54
NS3 帮助类翻译
例如,保存引用计数方便内存管理的
智能指针
(smartpointers),属性(attributes),命名空间(namespaces),回调(callbacks)等。
intoo
·
2021-04-21 19:47
★14.关于std--shared_ptr
循环引用循环引用问题classB;//前向声明classA{public://正确,不会增减引用计数,不造成
智能指针
循环引用,但是weak_ptr没有->和*,需要使用时必须先调用其lock函数返回一个
iDragonfly
·
2021-04-21 12:25
侯捷C++课程(下)学习三+STL
一、转换函数二、
智能指针
智能指针
里头一定有一个真正的c++指针sp->等同px,得到的东西继续用指针作用下去三、pointer-likeclasses四、function-likeclasses创建出的对象像函数
会变强的小魔女
·
2021-04-15 19:34
c++
编程语言
用右值引用减少对象拷贝
更令人欣喜的是,使用右值引用实现的
智能指针
可以使C+
番茄吐司君
·
2021-04-14 02:53
2.5w字长文爆肝 C++动态内存与
智能指针
一篇搞懂!太顶了!!!
动态内存与
智能指针
1.动态内存与
智能指针
2.shared_ptr类2.1.make_shared函数2.2.shared_ptr的拷贝和赋值2.3.shared_ptr自动销毁所管理的对象2.4.shared_ptr
Wecccccccc
·
2021-04-09 20:22
C++学习之路
C++
C++Primer
动态内存
智能指针
C++11
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被销毁时,它所指向的对象也被销毁。
双鱼座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
become-expert-in-cpp
notes-on-effective-cpp----------------------item13以对象管理资源(RAII)1)[Lambda+tr1::function]VS[
auto_ptr
]item32
KUANG13547029
·
2020-09-17 08:11
c/c++
数据库
数据结构与算法
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
上一页
28
29
30
31
32
33
34
35
下一页
按字母分类:
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
其他