腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
在
父
对象
的
自定义
析
构
函数
中
重置
shared_ptr
c++
、
shared-ptr
、
destructor
、
smart-pointers
假设我有一个
对象
A,它是我出于某种原因需要重写
的
析
构
函数
class A private: public: A(
shared_ptr
} 我是否需要
重置
它持有的
shared_ptr
,因为如果我使用
的
是默认
析
构
函数
,它会在其中调用
shared_ptr
的</em
浏览 19
提问于2020-07-25
得票数 0
回答已采纳
1
回答
如何
自定义
QScopedPointerDeleter以避免调用
父
类
的
析
构
函数
c++
、
qt
~A(){/* do something */}; public:};如何
自定义
QScopedPointerD
浏览 14
提问于2022-09-09
得票数 0
回答已采纳
1
回答
存储
在
堆分配向量
中
的
指针
的
空闲存储
c++
、
vector
、
heap-memory
、
unique-ptr
我有一个unique_ptr,它指向一个分配了vector
的
堆,它本身存储指向动态分配
对象
的
指针。问题是,我认为unique_ptr释放了动态分配
的
向量本身,但是这个向量
的
析
构
函数
并没有释放动态分配
的
对象
。那么,如何在不改变程序实现
的
情况下解决这一问题呢?我知道如果我使用
shared_ptr
,我可以使用
自定义
析
构
函数</
浏览 1
提问于2020-06-24
得票数 0
回答已采纳
3
回答
C++
shared_ptr
继承内存泄漏
c++
、
inheritance
、
c++11
、
memory-leaks
、
shared-ptr
我有这样一种情况,我有一个子类
的
基类
的
shared_ptr
。父母
的
析
构
函数
是虚拟
的
,而孩子不是,尽管我已经尝试了所有的组合。我
在
valgrind中有一个程序,它显示内存是在
对象
创建时
在
new语句中创建
的
。我知道
父
<e
浏览 6
提问于2011-07-14
得票数 1
回答已采纳
1
回答
如何创建
自定义
shared_ptr
?
c++
、
shared-ptr
、
destructor
、
smart-pointers
假设我有一个库SXY,它为我提供了一个文件
中
的
图片:我分享它
的
多个功能。
shared_ptr
已经这样做了,但是如果我这样做的话:它不会首先编译,因为
函数
get_picture返回指向图片
的
指针,而不是
shared
浏览 6
提问于2020-11-22
得票数 1
回答已采纳
1
回答
C++11、shared_ptr.reset()和循环引用
c++
、
c++11
、
shared-ptr
、
reset
、
cyclic-reference
我对shared_ptr.reset()
的
行为有一个疑问。 在这个场景
中
,我使用以下类进行循环引用。我有一本书和一个所有者,两者都有std::shared_ptrs,创建一个循环引用。在这种情况下,图书和所有者之间有很强
的
引用,一旦_tmain退出其作用域,它们
的
内存就会泄漏。当我
在
相应
的
析
构
函数
中
插入断点时,不会调用图书和所有者
的
析
构
函数
。()
浏览 1
提问于2014-12-18
得票数 2
回答已采纳
1
回答
创建
shared_ptr
时调用两次
的
类
析
构
函数
c++
当我为我
的
类创建一个共享ptr时,类
析
构
函数
被调用了两次,我遇到了一个问题。std::vector<std::
shared_ptr
<ServoController>> servos;{} 调用Serv
浏览 2
提问于2017-01-10
得票数 4
1
回答
使用线程销毁类
析
构
函数
中
的
shared_ptr
成员变量
c++
、
multithreading
、
c++11
我正在尝试使用thread重新创建销毁bar类
析
构
函数
中
的
shared_ptr
成员变量,我认为这可能是堆损坏
的
原因。我个人觉得
在
析
构
函数
中使用线程是一件很奇怪
的
事情,所以我想听听他们
的
意见。如果使用detach,则不调用
析
构
函数
;如果使用join,则
析
构
函数
浏览 1
提问于2018-04-13
得票数 0
1
回答
清理地图中所有共享指针
的
正确方法是什么?
c++
、
visual-c++
、
memory-management
、
shared-ptr
、
visual-studio-2010
我有一个
对象
,它有一个共享指针
的
映射。{}我看到一个_Resetp<> and _Ref_coun没有抓住两个
对象
,我很好奇问题是不是我没有清理节点。
浏览 0
提问于2014-02-18
得票数 2
4
回答
C++11: lambda捕获是按照什么顺序被
析
构
的
?
c++
、
lambda
、
c++11
、
raii
shared_ptr
<Foo> foo = ...这些智能指针是资源
的
包装器,出于某种原因,这些资源必须按照foo、bar
的
顺序进行
析
构
。现在我想创建一个使用foo和bar
的
lambda,但是超出了包含它们
的
作用域。因此,我可以通过值来捕获它们,如下所示:这将在function
对象
<e
浏览 2
提问于2012-09-21
得票数 13
回答已采纳
2
回答
与虚拟
析
构
函数
相比,
shared_ptr
用于子类销毁
的
运行时开销
c++
、
performance
、
oop
、
c++11
、
shared-ptr
我
在
Youtube视频()上遇到了模仿虚拟
析
构
函数
行为
的
技巧,
在
搜索互联网时,我发现了这样
的
答案: 通常,如果B继承自A并有自己
的
析
构
函数
,则需要基类A
中
的
虚拟
析
构
函数
来确保正确调用B
的
析
构
函数
。但是,使用
shared_ptr</e
浏览 1
提问于2017-04-25
得票数 1
回答已采纳
1
回答
std::unique_ptr和std::
shared_ptr
在
销毁行为上
的
区别是什么?
c++
、
c++14
来自 如果T是某个基B
的
派生类(sic),则std::unique_ptr<T>隐式可转换为std::unique_ptr<B>。结果std::unique_ptr<B>
的
默认删除器将对B使用运算符delete,除非B
的
析
构
函数
是虚拟
的
,否则将导致未定义
的
行为。注意,std::
shared_ptr
的
行为不同:std::
shared_ptr
<B>将对T
浏览 3
提问于2015-02-19
得票数 7
回答已采纳
3
回答
shared_ptr
怎么能不提供除赋值之外
的
赋值呢?
c++
std::
shared_ptr
如何提供noexcept operator=?当然,如果这个
shared_ptr
是最后一个,那么它将不得不销毁它
的
内容,并且它不能保证该
对象
的
析
构
函数
不会抛出,或者最初使用
的
自定义
删除器不会抛出。
浏览 0
提问于2012-12-08
得票数 22
回答已采纳
1
回答
向量如何处理对
析
构
函数
的
调用?
c++
、
oop
、
c++11
、
std
当尝试实现std::vector时,我会混淆对
析
构
函数
的
隐式调用。那么向量
中
的
元素可能:T*,
shared_ptr
<T> 一个指向类Object
的
智能/简单指针指向内置int * type
的
指针
浏览 4
提问于2022-11-29
得票数 1
1
回答
使用
shared_ptr
处理不完全类型
的
Pimpl成语
c++
、
c++11
、
smart-pointers
、
pimpl-idiom
在
本章
的
末尾,他提到如果使用
的
智能指针是
shared_ptr
,则不需要在实现文件
中
定义特殊
的
成员
函数
,这源于它支持
自定义
删除器
的
方式。我不知道
shared_ptr
的
析
构
函数
是如何实现
的
,但是(从C++ Primer
的
阅读
中
)我得到了这样
的
印象: del ?del(p) : d
浏览 3
提问于2016-11-15
得票数 7
回答已采纳
6
回答
缺省虚拟d‘’tor
c++
、
destructor
假设我有两个类:没有一个有d‘’tor,在这种情况下,如果我声明关于变量:Derived d; 我
的
编译器将为我生成d‘’tors,我
的
问题是,b and d
的
默认d‘for是不是虚拟
的
?
浏览 3
提问于2010-10-10
得票数 9
回答已采纳
2
回答
用于共享指针
的
析
构
函数
和擦除。
c++
、
c++11
、
c++14
据我所知,从容器
中
删除元素时调用
析
构
函数
,如果我是wrong..But Destr X打印不应出现在擦除后
的
之前,请纠正我#include <memory> } { } using Xptr = std::
shared_ptr
浏览 3
提问于2021-05-02
得票数 1
回答已采纳
1
回答
为什么可以使
析
构
函数
变为纯虚拟
的
?
c++
、
destructor
、
pure-virtual
正如我
在
cpp中所知道
的
那样,当我们删除一个
对象
或主
对象
完成时,所有
对象
的
析
构
函数
都将被调用。对于那些类型为类子
对象
的
对象
,将首先调用类子类
的
析
构
函数
,然后调用类
父
类
的
distructor。因为如果允许使用纯虚拟
析
构
函数
,
浏览 1
提问于2015-05-27
得票数 2
回答已采纳
1
回答
带有来自boost::
shared_ptr
的
信号
的
Qt连接插槽
qt
、
shared-ptr
我有一个主窗口应用程序,当快捷方式被触发时,会弹出一个对话框,显示一些信息,用户可以在这个对话框
中
做一些配置,然后一个信号被发送回主窗口,主窗口将做一些进一步
的
工作。伪代码如下所示:{ connect(configureDialog.get(), SIGNAL(reload()), this, SLOT(clean_rel
浏览 2
提问于2012-03-11
得票数 0
回答已采纳
3
回答
处理多线程清理
的
最佳方法
c++
、
multithreading
、
c++11
我有一个服务器类型
的
应用程序,我有一个问题,就是确保线程
在
完成之前不会被删除。下面的代码很好地代表了我
的
服务器;清理是为了防止列表
中
的
死线程堆积。<A>> clientData; atomc<bool> stopFlag;问题似乎是
析
构
函数
以错误
的
顺序运行-即,当线程
的
函数
完成时,
shared_ptr</e
浏览 0
提问于2014-04-03
得票数 3
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
虚析构与纯虚析构(C+)
关于C+的虚函数和多态,你觉得很难?首先你需要了解这三点!
智能指针:让C+程序更加安全和高效的神器
Python新手学习面向对象编程基础,创建类和实例化详细讲解
系统学习PHP之面向对象(上)
热门
标签
更多标签
云服务器
ICP备案
对象存储
实时音视频
即时通信 IM
活动推荐
运营活动
广告
关闭
领券