对于具有虚函数的低音类通常称为"多态基类".在这种情况下Car类
class Car
{
virtual void drive(){std::cout << "drive right";}
};
class EuropeCar: public Car
{
void drive(){std::cout << "drive left";}
}
Run Code Online (Sandbox Code Playgroud)
是C++标准polymorphic base class的一般俚语pure abstract class还是其中的一部分?
标准特别提到了多态类,例如,在10.3.1中:
虚函数支持动态绑定和面向对象的编程.声明或继承虚函数的类称为多态类.
它还讨论了抽象类和纯虚函数,如10.4.2中所述:
一个抽象类是可以仅使用作为基类一些其它类中的一个; 除了作为派生自它的类的子对象之外,不能创建抽象类的任何对象.如果一个类至少有一个纯虚函数,则它是抽象的.
没有具体提到纯抽象类(或纯虚拟类),只有纯虚函数.
注意:这是基于标准草案n3376.