代码点读机 / C++ / virtual

virtual C++ · 关键字

声明虚函数,让子类可以重写父类的行为,像家里的遥控器:表面同一个「开机」键,不同电视实现不一样。

怎么用

virtual 返回类型 函数名(...);

小例子

class 动物 {
public:
    virtual void 叫() { std::cout << "?"; }
};
class 狗 : public 动物 {
public:
    void 叫() override { std::cout << "汪"; }
};
动物* p = new 狗;
p->叫();

运行结果

提醒:基类析构函数也常加 virtual,防止内存泄漏

官方文档:https://en.cppreference.com/w/cpp/language/virtual

在代码里遇到不认识的词?打开代码点读机,点一下就懂 → ← C++全部词条