|
|
|
|
|
|
|
|
|
|
|
C++最重要的性能之一是代码重用。但是,为了具有可进化性,我们应当能够做比复制代码更多的工作。在C的方法中,这个问题未能得到很好的解决。而用C++,可以用类的方法解决,通过创建新类重用代码,而不是从头创建它们。这样,就可以使用其他人已经创建并调试过的类。创建一个新类作为一个已存在类的类型,采取这个已存在类的形式,对它增加代码,但不修改它。这个有趣的活动被称为继承,其中大量的工作由编译器完成。继承是面向对象程序设计的基石。
|
|
|
|
|
|
|
|
访问权限是访问控制说明符,它可以是public、private或protected。派生类与基类是有一定联系的,基类描述一个事物的一般特征,而派生类有比基类更丰富的属性和行为。如果需要,派生类可以从多个基类继承,也就是多重继承。通过继承,派生类自动得到了除基类私有成员以外的其他所有数据成员和成员函数,在派生类中可以直接访问,从而实现了代码的复用。派生类对象生成时,要调用构造函数进行初始化。编译器的调用过程是先调用基类的构造函数,对派生类中的基类数据进行初始化,然后再调用派生类自己的构造函数,对派生类的数据进行初始化工作。当然,在派生类中也可以更改基类的数据,只要它有访问权限。每个派生类只需要编写与基类行为不同或扩展的方面。
|
|
|
|
例如:A是基类,B是A的派生类,那么B将继承A的数据和函数。代码如下:
|
|
|
|
|
|
这个简单的示例程序也说明了:C++的"继承"特性可以大大提高程序的可复用性。
|
|
|