函数重载已经在 C++ 函数接口章节介绍。本篇只处理继承层次中三个容易混淆的概念:覆盖、隐藏,以及返回类型的特殊规则。
覆盖是什么
基类虚函数在派生类中提供对应实现:
#include <iostream>
class Shape {
public:
virtual void draw() const
{
std::cout << "shape\n";
}
virtual ~Shape() = default;
};
class Circle : public Shape {
public:
void draw() const override
{
std::cout << "circle\n";
}
};
2026/7/16大约 4 分钟