腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
文章
问答
(9999+)
视频
沙龙
5
回答
使用向上转换时的虚拟
析
构
函数
、
、
当至少有一个类方法是
虚
的时,每个人都说
析
构
函数
应该是
虚
的。}; { cout << "Exiting main" << endl;} 我在这段代码中没有任何
虚
函数
,但是如果我不把我的基
析
浏览 2
提问于2011-05-13
得票数 3
回答已采纳
2
回答
虚拟
析
构
函数
同时调用派生
析
构
函数
和基
析
构
函数
、
、
我在理解
虚
函数
时遇到了问题。当我重载一个
虚
函数
时,新的派生
函数
是否只被调用?或者同时使用派生
函数
和基
函数
?因为我注意到当调用虚拟
析
构
函数
时,基
析
构
函数
和派生类
析
构
函数
也会被调用。
浏览 0
提问于2013-02-18
得票数 1
回答已采纳
7
回答
如果我将一个基类的
析
构
函数
从非虚改为
虚
,会发生什么?
、
、
、
我遇到了一个基类,它的
析
构
函数
是非虚的,尽管基类有一个
虚
函数
fv()。这个基类也有很多子类。这些子类中有许多定义了自己的fv()。我想把基类的
析
构
函数
从非虚改为
虚
,但我不确定会有什么后果。那么,会发生什么呢?我还需要做些什么才能确保程序在我更改后工作正常?后续:在
浏览 3
提问于2016-08-22
得票数 21
9
回答
C++中的
析
构
函数
我的AB.h文件中有一个构造
函数
:private: int i;AB:i(0){}//constructorvirtualvoid methodA(unsigned int value)=0;};类AB具有
虚
函数
,但非虚
析
构
函数
AC.h:错误
浏览 1
提问于2011-03-22
得票数 4
回答已采纳
11
回答
为什么我们在C++中需要一个纯虚拟
析
构
函数
?
、
、
我理解使用虚拟
析
构
函数
的必要性。但是为什么我们需要一个纯的虚拟
析
构
函数
呢?在C++的一篇文章中,作者提到,当我们想要使类抽象时,我们使用纯虚拟
析
构
函数
。但是我们可以通过将任何成员
函数
作为纯
虚
函数
来使类成为抽象的。,我们什么时候才能真正让
析
构
函数
成为纯
虚
的呢?有人能给出一个好的实时例子吗?当我们
浏览 126
提问于2009-08-02
得票数 168
回答已采纳
3
回答
为什么虚拟
析
构
函数
的行为是这样的?
我读到
虚
析
构
函数
必须在具有
虚
方法的类中声明。我就是不明白为什么一定要声明它们是虚拟的。我知道为什么我们需要使用虚拟
析
构
函数
,如下面的例子所示。我只想知道为什么编译器不为我们管理虚拟
析
构
函数
。关于虚拟
析
构
函数
的工作有什么我需要知道的吗?下面的示例显示,如果
析
构
函数
没有声明为virtual,则不调
浏览 1
提问于2012-10-23
得票数 3
回答已采纳
4
回答
如果使用基指针声明,为什么简单
析
构
函数
不删除派生对象
、
因此,为了避免内存泄漏,我们需要设法同时调用对象的基
析
构
函数
和派生
析
构
函数
,以避免内存泄漏!是这样吗?这就是我们需要虚拟
析
构
函数
的原因吗?因此,当基
析
构
函数
是
虚
的时,派生类
析
构
函数
将覆盖基类的
析
构
函数
(它是
虚
的)。请澄清??
浏览 0
提问于2013-12-14
得票数 1
2
回答
虚拟
析
构
函数
是如何工作的?
我知道当我们销毁基类指针指向的派生类对象时,
虚
析
构
函数
是如何解决这个问题的。我想知道它们是如何工作的?endl;}{ delete a; return 0; 当我将A的
析
构
函数
更改为
虚
函数
时为什么我要把A的
析
构
函数
设为
虚
的。我想知道
浏览 2
提问于2010-04-22
得票数 5
回答已采纳
6
回答
虚拟
析
构
函数
和Vtable之间有什么关系吗
、
、
如果我们编写
虚
函数
,它会在该类的对象中添加一个vtable。虚拟
析
构
函数
也是这样吗?vtable是否用于实现
析
构
函数
的虚拟化?
浏览 2
提问于2009-09-17
得票数 1
回答已采纳
3
回答
C++虚拟
析
构
函数
、
如果我有一个基类和一个派生类,并且我删除了父
虚
类中的
析
构
函数
,但实例化了一个子类类型的对象,当它被销毁时,它会调用父
析
构
函数
吗(因为是
虚
的)?如果我还在派生类中声明了
析
构
函数
,它是否会同时调用
析
构
函数
(基类和派生类)。提前感谢:-)。 我问题的第二部分是关于第一部分。为什么基类
析
构
函数
需要声明
浏览 2
提问于2011-04-26
得票数 3
回答已采纳
2
回答
C++ --为什么我们要在类定义之外定义纯虚拟
析
构
函数
?
问:我们应该总是在类定义之外定义纯虚拟
析
构
函数
吗?谢谢
浏览 1
提问于2011-03-11
得票数 6
回答已采纳
4
回答
c++中的
析
构
函数
概念
、
、
cout << Ptr->area() << endl; return 0;在上面的代码中,指针包含派生类对象的地址,所以当我删除指针时,它应该调用派生类
析
构
函数
和基类
析
构
函数
,但为什么它只调用基类
析
构
函数
。如果我把基类
析
构
函数
设为
虚
的,那么它同时调用派生类和基类
析
<em
浏览 0
提问于2013-03-08
得票数 0
3
回答
C ++抽象基类模板
、
、
virtual ~B(){} {return 0;错误LNK2019:在
函数
浏览 1
提问于2011-01-21
得票数 2
3
回答
通过删除基类
析
构
派生类
、
、
、
在它的
析
构
函数
中这是可能的吗?或者我必须实现一个虚拟的销毁()方法或类似的东西吗?
浏览 0
提问于2010-07-31
得票数 1
回答已采纳
1
回答
C++中的LNK2019错误
\List.objvirtual ~Data()=0;Job::~Job()} 你能发现一个问题吗?
浏览 0
提问于2012-05-31
得票数 1
回答已采纳
3
回答
使用虚拟
析
构
函数
,我需要显式地为每个子类声明一个虚拟
析
构
函数
吗?
、
我有一个场景,我正在编写一些深层的面向对象的代码,具有多层抽象基类,我想知道是否必须为每个抽象基类显式声明一个
析
构
函数
。 编译器是否会生成一个已经是虚拟的缺省值,或者我必须告诉它?
浏览 0
提问于2011-04-10
得票数 21
回答已采纳
6
回答
为什么定义一个纯
虚
函数
是有意义的?
、
、
、
43要创建一个抽象类,我们只需要给它一个纯虚拟
析
构
函数
:public:virtual ~AWOV() = 0; // declare pure virtual destructor然后,他继续说,有一个转折:我们必须为纯虚拟
析
构
函数
提供一个定义:AWOV::~AWOW(
浏览 0
提问于2012-10-16
得票数 22
回答已采纳
3
回答
C++类接口类的
析
构
函数
;当另一个类从这个派生出来像使用接口一样使用它时,那么,问题来了:当你像上面那样创建接口类时,你总是包含一个虚拟
析
构
函数
吗
浏览 27
提问于2010-04-22
得票数 27
回答已采纳
5
回答
虚拟
析
构
函数
是继承的吗?
、
、
如果我有一个带有虚拟
析
构
函数
的基类。有一个派生类来声明一个虚拟
析
构
函数
吗?2)是因为它的基础而自动为
虚
的,还是它“停止”了派生
析
构
函数
,如果没有做什么就省略它?声明派生
析
构
函数
的最佳实践是什么?将其声明为虚拟的、非虚拟的或在可能的情况下忽略它?
浏览 65
提问于2010-02-04
得票数 83
回答已采纳
4
回答
基类
析
构
函数
不是
虚
的,而子类
析
构
函数
是
虚
的,程序崩溃
、
我有一个基类,它的
析
构
函数
不是
虚
的,但是子类的
析
构
函数
是
虚
的:public: std::cout <<
浏览 0
提问于2012-06-25
得票数 2
回答已采纳
点击加载更多
相关
资讯
虚析构与纯虚析构(C+)
比较 上下文管理器及构造/析构函数
关于C+的虚函数和多态,你觉得很难?首先你需要了解这三点!
C+之虚函数
C/C+编程笔记:一文带你读懂C+面向对象和Java面向对象的区别
热门
标签
更多标签
云服务器
ICP备案
云直播
对象存储
即时通信 IM
活动推荐
运营活动
广告
关闭
领券