C++类的继承和多态

c++可以多继承,语法如下:

class <派生类名>:<继承方式1><基类名1>,<继承方式2><基类名2>,…

{

                    <派生类类体>

};

其中,继承方式是 public、protected 或 private 其中的一个

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

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

私有继承(private):当一个类派生自私有基类时,基类的公有和保护成员将成为派生类的私有成员。

多态:

C++ 多态意味着调用成员函数时,会根据调用函数的对象的类型来执行不同的函数。

class  Shape{

public:

    void area(){

        printf("Shape area");

    }

};

class Rectangle  :  public Shape{

public:

    void area(){

        printf("Rectangle area");

    }

};

class Triangle : public Shape{

public:

    void  area(){

        printf("Triangle area");

    }

};

Shape *shape = new Triangle(); //基类指针指向子类

shape.area();    //输出"Shape area",没有产生多态,调用的是父类的方法

将Shape基类的方法改为:virtual  void area() 

调用shape.area() 

输出:Triangle area //调用了子类的方法

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 转自大神博客凡程子 一、基本概念 类的继承,是新的类从已有类那里得到已有的特性。或从已有类产生新类的过程就是类的派...
    leon4ever阅读 498评论 0 0
  • C++文件 例:从文件income. in中读入收入直到文件结束,并将收入和税金输出到文件tax. out。 检查...
    SeanC52111阅读 2,866评论 0 3
  • 类的继承与派生 类的继承就是新类由已经存在的类获得已有特性,类的派生是由已经存在的类产生新类的过程。已有类叫做基类...
    Mr希灵阅读 637评论 0 1
  • 一年大一岁,要好好地做人啦。 比起农历新年给予每一个人的岁月增长,自己的生日,才是真真正正地宣告自己迈进了下一个一...
    在屋顶一跃入海阅读 179评论 0 0
  • 一、目标:2017年轻松赚到20万,同时拍摄完3部电影作品 动机和愿景: 愿我现在及过去所有种下的有关财富的种子早...
    易江南从心出发阅读 365评论 0 1