码迷,mamicode.com
首页 > 编程语言 > 详细

C++ 抽象基类

时间:2020-06-23 17:20:24      阅读:50      评论:0      收藏:0      [点我收藏+]

标签:定义   private   文件中   实现   方法   rac   不能   类型   成员   

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

  纯虚函数。

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

 

  纯虚函数

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

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

class BaseEllipse    // abstract base class
{
private:
    ....
public:
    ...
    virtual double Area() const = 0;    // a pure virtual function
    ...
}

  给出方法定义:

void BaseEllipse::Move(int nx, ny) { x = nx; y= ny; }

 

  抽象基类ABC

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

 

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

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

  

  ABC理念

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

 

-----

C++ 抽象基类

标签:定义   private   文件中   实现   方法   rac   不能   类型   成员   

原文地址:https://www.cnblogs.com/suui90/p/13183002.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!