Loading... **non-virtual**:不希望子类class重新定义(override,覆盖)函数 **virtual**:希望子类class重新定义(override)函数,且在父类class中已经对该函数进行了默认的定义 **pure virtual**:希望子类class一定要重新定义(override)函数,且在父类class中没有对该函数进行默认的定义 ```cpp class Shape { public: virtual void draw( ) const = 0; //pure virtual virtual void error(const std::string& msg); //vitual int objectID( ) const; //non-virtual ... }; class Rectangle: public Shape { ... }; class Ellipse: public Shape { ... }; ``` 通过子类的对象调用父类的函数 最后修改:2022 年 09 月 14 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 如果觉得我的文章对你有用,请随意赞赏