腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
为
什么
虚拟类的
析
构
函数
不自动添加到vtable中?
、
、
、
、
当虚拟类B派生自虚拟基类A时,除非在A和B中显式声明虚拟
析
构
函数
,否则vtable中B的
析
构
函数
将指向A的
析
构
函数
。为
什么
?为
什么
B的vtable
析
构
函数
不自动指向B的
析
构
函数
而不必定义A和B虚拟
析
构
函数
?编辑:意识到如果没有使A的
浏览 0
提问于2018-04-14
得票数 1
回答已采纳
6
回答
何时不使用虚拟
析
构
函数
?
、
我相信我曾多次搜索过虚拟
析
构
函数
,大多数都提到了虚拟
析
构
函数
的用途,以及为
什么
需要虚拟
析
构
函数
。而且,我认为在大多数情况下,
析
构
函数
需要是虚拟的。那么问题
是
:为
什么
c++在默认情况下不设置所有
析
构
函数
?或在其他问题上: 我
什么
时候不需要使用虚拟
析</
浏览 0
提问于2015-05-21
得票数 64
16
回答
如果不应该在
析
构
函数
中抛出异常,如何处理其中的错误?
、
、
、
大多数人说,永远不要从
析
构
函数
中抛出异常,这样做会导致未定义的行为。Stroustrup指出,“向量
析
构
函数
显式地为每个元素调用
析
构
函数
。这意味着如果一个元素
析
构
函数
抛出,向量销毁就会失败……实际上没有
什么
好的方法来防止从
析
构
函数
引发的异常,因此库无法保证元素
析
构
函数
浏览 41
提问于2008-09-24
得票数 298
回答已采纳
3
回答
基类没有
析
构
函数
,但派生类有。我是否需要寻找与堆无关的陷阱?
、
、
在继承方面,我知道建议您的类的
析
构
函数
是
虚拟的,因此除了任何派生
析
构
函数
之外,基类的
析
构
函数
都会被正确调用。但是,我想知道在下面的场景中是否存在与派生对象相关的堆栈相关问题。让我们假设我们有一个基类,它没有
析
构
函数
(不管出于
什么
原因):以及具有
析
构
函数
的派生类:
浏览 6
提问于2016-05-22
得票数 2
回答已采纳
2
回答
显式调用
析
构
函数
、
我理解在大多数情况下,我们不应该显式地调用
析
构
函数
。示例:模板结构A{ ~A();};void f(A* p,A* q) {p->A::A();// OK:
析
构
函数
调用q->A::~A();// OK:
析
构
函数
call } 在我看来,在这种情况下,我们可以显式地调用
析
构
函数
,您能解释一下为
什么
吗?在这个例子
浏览 5
提问于2013-05-23
得票数 48
回答已采纳
1
回答
虚拟
析
构
函数
在C++中的使用
、
、
、
、
虚拟
析
构
函数
和纯虚拟
析
构
函数
在C++中的应用是
什么
?我必须使用虚拟
析
构
函数
而不是普通
析
构
函数
的情况是
什么
?
浏览 0
提问于2020-03-26
得票数 2
4
回答
为
什么
不删除具有C++11中未定义行为的
析
构
函数
的对象?
、
、
、
、
引用C++11标准3.8: 为
什么</
浏览 5
提问于2012-04-02
得票数 10
3
回答
C++销毁顺序:在类
析
构
函数
之前调用字段
析
构
函数
、
、
有方法在类
析
构
函数
之前调用字段
析
构
函数
吗?:Small destructor 我需要在Small
析
构
函数
之前调用Big
析
构
函数
,因为它为Big
析
构
函数
做了一些必要的清理。~Small()
析
构
函数
。但是,->这会调用Small
析</
浏览 5
提问于2017-07-26
得票数 6
回答已采纳
1
回答
规则“一个用户定义但无所作为的
析
构
函数
也是一个非平凡的
析
构
函数
”是不是太严格了?
class Basepublic:private:}; 看,
析
构
函数
什么
也不做,就像c++编译器提供的默认
析
构
函数
一样。但是
析
构
函数
仍然
是
一个非平凡的
析
构
函数
,它来自于后置。 我知道,标准中的每一
浏览 1
提问于2018-12-22
得票数 5
回答已采纳
1
回答
试图理解multimap为
什么
像它那样构造/下降
、
、
、
我想要理解的
是
为
什么
它在当时被分配。我已经用一个字符串和一个对象构造了一个multimap,在这个对象的构造
函数
&
析
构
函数
中,当调用它们时,我有一个打印输出。谢谢你帮助我理解这个在multimap的建筑/破坏。test0
浏览 3
提问于2012-02-13
得票数 1
回答已采纳
1
回答
程序退出后,动态分配的2D数组是否会自动删除?
我现在正在学习
析
构
函数
,因为我正在做关于矩阵的赋值(我们应该做一个矩阵类和重载操作符来执行矩阵运算,接下来我要提到的人也计划让它执行Gauss-Jordan消去,如果这是相关的话),在这个赋值中通过动态我听说有人说要使用
析
构
函数
来删除数组。我开始阅读关于
析
构
函数
和调用
析
构
函数
的事件之一,这似乎
是
在应用程序中使用
析
构
函数<
浏览 1
提问于2018-10-29
得票数 0
回答已采纳
3
回答
理解派生类中C++
析
构
函数
的行为
、
、
double& operator[](int i) { return v[i]; }};
析
构
函数
(~Vector_container())重写基类
析
构
函数
(~Container())。注意,成员
析
构
函数
(~Vector())
是
由其类的
析
构
函数</
浏览 0
提问于2019-07-10
得票数 2
回答已采纳
1
回答
C# -“
析
构
函数
不是继承的”实际上是
什么
意思?
、
、
、
、
第10.13节
析
构
函数
规定如下:
析
构
函数
不被继承。因此,除了可以在该类中声明的
析
构
函数
之外,类没有其他
析
构
函数
。我的问题
是
,“
析
构
函数
不是继承的”实际上意味着
什么
,因为尽管不能显式调用
析
构
函数
,继承链中的
析
构<
浏览 3
提问于2009-12-08
得票数 13
回答已采纳
7
回答
虚拟
析
构
函数
的默认覆盖
、
、
每个人都知道基类的描述器通常必须
是
虚拟的。但是派生类的
析
构
函数
又是
什么
呢?在C++11中,我们有关键字"override“和显式使用默认
析
构
函数
的能力。{{ ~Child() override = default;在Child类的
析
构
函数
中同时使用关键字在这种情况下,编
浏览 1
提问于2016-12-07
得票数 65
1
回答
在C++中的
析
构
函数
中允许做
什么
?
、
我在试着理解在
析
构
函数
中允许做
什么
。 说:“对于具有非平凡
析
构
函数
的对象,在
析
构
函数
完成执行后引用对象的任何非静态成员或基类会导致未定义的行为”。以这种方式描述销毁序列:“对于用户定义或隐式定义的
析
构
函数
,在执行
析
构
函数
的主体后,编译器调用类的所有非静态非变体成员的
析
构
<em
浏览 0
提问于2021-05-18
得票数 4
回答已采纳
4
回答
4级继承链中的C++虚拟
析
构
函数
。
、
我正在用虚拟
析
构
函数
做一个小实验来回顾一下--想知道是否有人对以下问题有一个简单的解释(使用VS2010):运行了2个实验:B具有非虚拟
析
构
函数
%d具有非虚拟
析
构
函数
在D类型的堆上分配4个对象-在第一个3处指向A*,B*和C*的指针-为
浏览 1
提问于2012-06-16
得票数 3
回答已采纳
1
回答
用户定义的类和std类之间有区别吗?
、
、
据我所知,构造
函数
/
析
构
函数
调用方式的唯一区别在于实例化顺序。但是,在“普通”用户类和std中的类之间还有其他区别吗?这些对象的构造
函数
或
析
构
函数
的调用方式有
什么
不同吗? 我问这个问题的主要原因
是
,根据 (30.3.2.3节),join()不是在线程
析
构
函数
中调用的。您可以阅读为
什么
要使用。但是在 answer on stackover
浏览 0
提问于2017-04-06
得票数 1
1
回答
析
构
函数
是否根据标准有名称?
“标准”没有明确规定
析
构
函数
有或没有名称,但是有许多关于如何使用特殊语言引用和声明
析
构
函数
的引用,其中没有一个直接引用
析
构
函数
的名称。这个问题似乎在许多地方都被回避了: 使用可选
函数
说明符(7.1.2)的特殊声明器语法,后面
是
~,后面
是
析
构
函数
的类名,后面
是
空参数列表,用于在类定义中声明<em
浏览 2
提问于2010-04-22
得票数 5
回答已采纳
1
回答
为
什么
C++中的默认用户定义
析
构
函数
会增加执行时间?
、
这个
析
构
函数
的类被实例化超过200次,这增加了整个响应时间,当这个
析
构
函数
被删除时,我观察到响应时间提高了28毫秒。有人能解释为
什么
这个时间差异,尽管这些只是默认的
析
构
函数
,但由用户定义,编译器无论如何都会调用这些
函数
。在使用“用户定义的默认
析
构
函数
”时,我指的是一个空的
析
构
函数
: ~Clas
浏览 5
提问于2012-04-24
得票数 1
11
回答
为
什么
我们在C++中需要一个纯虚拟
析
构
函数
?
、
、
我理解使用虚拟
析
构
函数
的必要性。但是为
什么
我们需要一个纯的虚拟
析
构
函数
呢?在C++的一篇文章中,作者提到,当我们想要使类抽象时,我们使用纯虚拟
析
构
函数
。但是我们可以通过将任何成员
函数
作为纯虚
函数
来使类成为抽象的。,我们
什么
时候才能真正让
析
构
函数
成为纯虚的呢?有人能给出一个好的
浏览 126
提问于2009-08-02
得票数 168
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
当对象释放时,避免析构函数调用两次
比较 上下文管理器及构造/析构函数
第二部分:关于析构函数何时执行
什么是EXCEL函数?
从技术角度简析什么是区块链
热门
标签
更多标签
云服务器
ICP备案
实时音视频
对象存储
即时通信 IM
活动推荐
运营活动
广告
关闭
领券