一,什么是继承?
继承是类和类之间的关系,是代码复用的重要手段,允许在保持原有类结构的基础上进行扩展,创建的新类与原有的类类似,只是多了几个成员变量和成员函数。
二,继承的方式
class 派生类名 :继承方式 基类名 {};
继承的方式有以下三种:
需要注意的是:
1,若不表明是以何种方式继承,使用关键字class时默认是私有继承,使用struct关键字时默认公有继承
2,上面的不可访问是指派生类对象不管是在类里还是类外都不能不访问
三,基类和派生类对象赋值转换
1,在public继承的情况下,派生类对象可以赋值给基类对象或基类指针或基类的引用,因为这里它是把一个派生类的对象看成是一个基类的对象,把派生类多的那一部分进行切片操作。
因此当一个基类的指针指向一个派生类的对象时,该指针只能访问基类定义的函数。(多态与此相反。如果基类的此函数声明为virtual类型,那么基类指针指向子类对象,该指针在调用该函数时会调用子类的函数)
2,当父类的对象赋值给派生类的指针时,这是十分危险的,虽然也能通过强制类型转换来进行赋值,但有可能出现越界的问题。
四,派生类的默认成员函数<