基类 & 派生类
一个类可以派生自多个类,这意味着,它可以从多个基类继承数据和函数。定义一个派生类,我们使用一个类派生列表来指定基类。类派生列表以一个或多个基类命名,形式如下:
class derived-class: access-specifier base-class
其中,访问修饰符 access-specifier 是 public、protected 或 private 其中的一个,base-class 是之前定义过的某个类的名称。如果未使用访问修饰符 access-specifier,则默认为 private。
假设有一个基类 Shape,Rectangle 是它的派生类,如下所示:
实例
#include<iostream>usingnamespacestd; // 基类classShape{ public: voidsetWidth(intw) { width = w; } voidsetHeight(inth) { height = h; } protected: intwidth; intheight;}; // 派生类classRectangle: publicShape{ public: intgetArea() { return(width * height); }}; intmain(void){ RectangleRect; Rect.setWidth(5); Rect.setHeight(7); // 输出对象的面积 cout << "Total area: " << Rect.getArea() << endl; return0;}
当上面的代码被编译和执行时,它会产生下列结果:
Total area:35