定义一个基类Object类,有数据成员weight及相应的操作函数,由此派生出Box类,增加数据成员height和width及相应的操作函数,声明一个Box对象,观察构造函数与析构函数的调用顺序。
代码:
#include <iostream>
#include <stdlib.h>
using namespace std;
class Object
{
public:
Object()
{
cout << "Object构造函数" << endl;
weight = 0;
}
~Object()
{
cout << "Object析构函数" << endl;
}
int getWeight() { return weight; }
void setWeight(int w)
{
weight = w;
}
private:
int weight;
};
class Box : public Object
{
public:
Box()
{
cout << "Box构造函数" << endl;
height = 0;
width = height;
}
~Box()
{
cout << "Box析构函数" << endl;
}
int getHeight()
{
return height;
}
void setHeight(int h)
{
height = h;
}
int getWidth()
{
return width;
}
void setWidth(int w)
{
width = w;
}
private:
int height;
int width;
};
int main()
{
Box a;
return 0;
system("pause");
}
调试结果: