子类继承父类后,当创建子类对象,也会调用父类 的构造函数。
问题:父类和子类的构造和析构顺序是谁先谁后?
class Base
{
public:
Base()
{
cout << "Base的构造函数" << endl;
}
~Base()
{
cout << "Base的析构函数" << endl;
}
};
//公共继承
class Son :public Base
{
public:
Son()
{
cout << "Son的构造函数" << endl;
}
~Son()
{
cout << "Son的析构函数" << endl;
}
};
void test01()
{
//Base B;
Son s;
}
构造顺序:先构造父类,再构造子类(先造爸爸在造儿子)
析构顺序:与上述相反