和普通的构造器析构器类似,不过在继承的类中进行操作
#include <iostream>
#include <string>
class BaseClass
{
public:
BaseClass();
~BaseClass();
void doSomething();
};
class SubClass : public BaseClass
{
public:
SubClass();
~SubClass();
};
BaseClass::BaseClass()
{
std::cout<<"进入基类构造器"<<std::endl;
};
BaseClass::~BaseClass()
{
std::cout<<"进入基类析构器"<<std::endl;
};
void BaseClass::doSomething()
{
std::cout<<"doSomething做些事情"<<std::endl;
}
SubClass::SubClass()
{
std::cout<<"进入子类构造器,"<<std::endl;
}
SubClass::~SubClass()
{
std::cout<<"进入子类析构器,"<<std::endl;
}
int main()
{
SubClass subclass;
subclass.doSomething();
std::cout<<"结束"<<std::endl;
return 0;
}
这个示例展示了C++中基类和子类的构造器与析构器的调用流程。基类BaseClass包含一个doSomething()方法,而SubClass继承自BaseClass并定义了自己的构造器和析构器。在main()函数中,创建了一个SubClass对象,调用了doSomething()方法,然后程序结束,展示出构造和析构的顺序。
543

被折叠的 条评论
为什么被折叠?



