关于继承的概念:
继承就是新的类继承已有的类的而创建新的类。继承可以使得创建和维护一个应用进程变得容易,且利用了重用代码功能,也提高了执行时间效果。
继承呈现了面向对象程序设计的层次结构,从简单到复杂的认知过程。
在C++类中。如果B类继承了A类,则A类叫做基类或者父类。B类则叫做派生类或者子类。
继承的语法:
class 派生类 :[访问权限限定符] 类名a,[访问权限限定符] 类名b,......以此类推来继承类。
class Teacher//创建一个父类,老师。
{
public:
Teacher(string m_math = "2x+y = z")
{
math = m_math;
}
~Theacher()
{
cout<<"leaning"<
继承分为公有继承(public),保护继承(protected),私有继承(private)。
公有继承:当一个类派生自公有基类时,基类的公有成员也是派生类的公有成员,基类的保护成员也是派生类的保护成员。基类的私有成员不能直接被派生类访问,但是可以通过调用基类的公有和保护成员来访问。
保护继承:当一个派生类来自保护基类时,基类的公有和保护成员成为派生类的保护成员。
私有继承:当一个派生类来自私有基类时,基类的公有和保护成员都是派生类的私有成员。
无法被继承的成员:基类的构造函数、拷贝构造函数和析构函数,以及基类的重载运算符和友元函数。
当基类和派生类有同名函数时,调用的时候总是调用派生类的同名函数,此时基类的成员函数被隐藏,包括重载。
如果派生类继承过来的函数不适合或者需要拓展,则需要重新实现基类的函数。
同名函数的返回值与参数可相同可不同。
构造函数的调用顺序,先调用基类的构造函数,再调用成员对象的构造函数,最后再调用派生类的构造函数。注意:当一个基类被多个派生类继承时,调用顺序按照派生类的继承顺序而不是初始化列表的顺序。
而析构函数的调用则时与构造函数相反。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)