C++面向对象之继承简解

        关于继承的概念:

                继承就是新的类继承已有的类的而创建新的类。继承可以使得创建和维护一个应用进程变得容易,且利用了重用代码功能,也提高了执行时间效果。

                继承呈现了面向对象程序设计的层次结构,从简单到复杂的认知过程。

                在C++类中。如果B类继承了A类,则A类叫做基类或者父类。B类则叫做派生类或者子类。

         继承的语法:

                class 派生类 :[访问权限限定符]  类名a,[访问权限限定符]  类名b,......以此类推来继承类。

class Teacher//创建一个父类,老师。
{
public:
    Teacher(string m_math = "2x+y = z")
    {
        math = m_math;
    }
    
    ~Theacher()
    {
        cout<<"leaning"<<endl;
    }   
    
private:
    string math;
};

class Student:public Theacher
{
public:
    Student(string m_math = "2x+y = z")
    {
        cout<<"stady..."<<endl;
    }
};

继承分为公有继承(public),保护继承(protected),私有继承(private)。

公有继承:当一个类派生自公有基类时,基类的公有成员也是派生类的公有成员,基类的保护成员也是派生类的保护成员。基类的私有成员不能直接被派生类访问,但是可以通过调用基类的公有和保护成员来访问。

保护继承:当一个派生类来自保护基类时,基类的公有和保护成员成为派生类的保护成员。

私有继承:当一个派生类来自私有基类时,基类的公有和保护成员都是派生类的私有成员。

无法被继承的成员:基类的构造函数、拷贝构造函数和析构函数,以及基类的重载运算符和友元函数。

当基类和派生类有同名函数时,调用的时候总是调用派生类的同名函数,此时基类的成员函数被隐藏,包括重载。

如果派生类继承过来的函数不适合或者需要拓展,则需要重新实现基类的函数。

同名函数的返回值与参数可相同可不同。

构造函数的调用顺序,先调用基类的构造函数,再调用成员对象的构造函数,最后再调用派生类的构造函数。注意:当一个基类被多个派生类继承时,调用顺序按照派生类的继承顺序而不是初始化列表的顺序。

而析构函数的调用则时与构造函数相反。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值