C++ 抽象基类

C++ 抽象基类

——不能创建对象,只能派生出新类的类是抽象基类ABC(作为模板)。

纯虚函数。

  包含纯虚函数的类是抽象基类。


  纯虚函数

  纯虚函数声明:虚函数的结尾处加上=0。

  C++通过使用纯虚函数提供未实现的函数,但仍可以在实现文件中提供方法的定义。

classBaseEllipse// abstract base class{private:

    ....public:

    ...

    virtualdoubleArea()const=0;// a pure virtual function    ...

}

  给出方法定义:

voidBaseEllipse::Move(intnx, ny) { x = nx; y= ny; }


  抽象基类ABC

  在原型中使用=0(即至少声明一个纯虚成员函数)指出类是一个抽象基类,在类中不可以定义该函数。


  类声明中包含纯虚函数时,不能创建该类的对象。

  使用抽象基类派生出的类被称为具体类,这表示可以创建这些类型的对象。


  ABC理念

  ABC要求具体派生类覆盖其纯虚函数(实现)——迫使派生类遵循ABC设置的接口规则。


-----

原文链接:https://www.cnblogs.com/suui90/p/13183002.html

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