c++ 多态 (第二部分)

1.纯虚函数,抽象类

c++ 多态 (第二部分)

  • 纯虚函数在虚函数表中,值为零
  • 包含纯虚函数的类叫做抽象类
  • 抽象类无法实例化对象,因为对象无法调用纯虚函数
  • 抽象类的子类也有可能是抽象类
  • 只有抽象类的子类把所有抽象类中的纯虚函数都做了实现,才可以实例化对象。


2.接口类

如果抽象类中只有纯虚函数,而没有其他任何东西,那么这个类就叫做接口类。(无任何数据成员且成员函数都是纯虚函数)

  • 更像是代表一种能力或者协议
  • 没有构造函数和析构函数