C加加中是否要编写对基类和成员对象的析构函数的调用?
3个回答
展开全部
不需要编写对基类和成员对象的析构函数的调用
基类的析构函数会自动被调用。
成员对象的析构函数在对象生存期结束时会自动调用。
看看下面程序的输出结果:
derived
member
base
源码如下
#include <iostream>
using namespace std;
class member {
public: ~member() { cout << "member" <<endl; }
};
class base {
public: ~base() { cout << "base" <<endl; }
};
class derived: public base {
member m;
public: ~derived () { cout << "derived " <<endl; }
};
int main()
{
derived d;
return 0;
}
展开全部
不需要
基类和成员对象的析构函数,都由它们各自自己的类实现。
你只需要关心你自己的类,就行了。
在你的类中申请的资源,在析构函数里要记得释放。
基类和成员对象的析构函数,都由它们各自自己的类实现。
你只需要关心你自己的类,就行了。
在你的类中申请的资源,在析构函数里要记得释放。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
所有的“析构函数”都很少需要被调用(只有一些非常特殊的场景才需要),关键在于你的“成员”变量是指针不是?如果是分配的指针对象,需要delete它,这样就trigger析构函数的调用了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询