C++继承专题

继承基本概念

继承概念

C++中的类成员访问级别(publicprivateprotected

思考:如何恰当的使用publicprotectedprivate为成员声明访问级别?

1、需要被外界访问的成员直接设置为public

2、只能在当前类中访问的成员设置为private

3、只能在当前类和子类中访问的成员设置为protectedprotected成员的访问权限介于publicprivate之间。

 

 

父类成员访问级别

 

public

proteced

private

public

public

proteced

private

proteced

proteced

proteced

private

private

private

private

private

 

 

 

三看

C++中的继承方式(publicprivateprotected)会影响子类的对外访问属性

判断某一句话,能否被访问

1)看调用语句,这句话写在子类的内部、外部

 

2)看子类如何从父类继承(publicprivateprotected

 

3)看父类中的访问级别(publicprivateprotected

 

继承模型图

子类由两部分构成,一部分是继承的父类,另一部分是自己新增加的元素,访问父类元素的方式[子类对象].[父类名]::[父类元素]

构造时,先构造父类部分,再构造自身部分(先构造a,b,,再构造c,d,e)

析构时,先析构自身部分,再析构父类部分.(先析构c,d,e,再析构a,b)

 

 

 

继承中的同名成员变量处理方法

 

 

class A
{
public:
    int a;
    int b;
    void printfB()
    {
        cout<<"我是父类的B"<<b<<endl;
    }
    void print()
    {
        cout<<"我是父类"<<endl;
    }
protected:
    
private:
};

class B : public A
{
public:
    int b;
    int c;
    void print()
    {
        cout<<"我是子类"<<endl;
    }
protected:
private:
};

void main()
{
    
     B b1;
     b1.b = 10;
     b1.A::b = 11;
     b1.printfB();

     b1.print();
     b1.A ::print();
     b1.B::print();

    system("pause");
}

 

 

 

 

 

 

 

posted @ 2016-11-17 22:31  ren_zhg1992  阅读(91)  评论(0)    收藏  举报