/*
#include<iostream>
using namespace std;
class father
{
private:
int a;
public:
father(int i){a=i;cout<<"构造基类a的值:"<<a<<endl;}
~father(){cout<<"析构基类a的值:"<<a<<endl;}
};
class son:public father
{
private:
int b;
public:
son(int i,int j);
~son(){cout<<"析构子类b的值:"<<b<<endl;}
};
son::son(int i,int j):father(i)
{
b=j;
cout<<"构造子类b的值:"<<b<<endl;
}
void main()
{
son b(1,2);
}
#include<iostream>
using namespace std;
class father
{
private:
int a;
public:
father(int i){a=i;cout<<"构造基类a的值:"<<a<<endl;}
~father(){cout<<"析构基类a的值:"<<a<<endl;}
};
class son:public father
{
private:
int b;
public:
son(int i,int j);
~son(){cout<<"析构子类b的值:"<<b<<endl;}
};
son::son(int i,int j):father(i)
{
b=j;
cout<<"构造子类b的值:"<<b<<endl;
}
void main()
{
son b(1,2);
}
*/
顺序:
1.构造父类对象
2.构造子类对象
3.析构子类对象
4.析构父类对象
因为:
构造过程:有父亲才有有儿子
析构过程:拆迁,先拆顶楼,后拆底层