C++ Virtual Function
纯虚函数是虚函数的特例。
抽象函数和接口都是纯虚函数。
纯虚函数允许我们在基类里定义一个方法,该方法没有任何的实现,而继承该基类的子类则会具体实现这个方法。
对比于虚函数而言,虚函数在基类中也拥有实现过程,如果子类并没有重写该方法,则依然可以调用基类的方法。而纯虚函数由于基类方法并没有实现过程,所以子类必须要重写该方法并为其添加具体的实现过程。
接口类仅仅包含纯虚函数,即没有实现的函数,类似于一个模板。同时由于接口类并不包含任何的实现,因此,它并不能够被实例化。
#include <iostream>
#include <string>
class Entity
{
public:
virtual std::string GetName()