php中文网

如何重写 C++ 函数的虚函数

php中文网

如何重写 c++++ 函数的虚函数?在派生类中声明具有相同名称和参数列表的函数。使用 override 关键字表示正在重写基类中的虚函数。

如何重写 C++ 函数的虚函数

虚函数允许 C++ 类中的派生类覆盖基类的方法。这使您能够扩展并修改基类行为,同时仍能保持父类接口。要重写虚函数,您需要使用 override 关键字。以下是如何操作:

语法:

立即学习“C++免费学习笔记(深入)”;

virtual return_type function_name(parameter_list) override;

步骤:

  1. 在派生类中声明一个具有相同名称和参数列表的函数。
  2. 使用 override 关键字表示您正在重写基类中的虚函数。

实战案例:

假设我们有一个 Shape 基类,它具有一个 area() 虚函数,该函数计算形状的面积。我们还创建了一个派生类 Circle,它覆盖 area() 函数以计算圆的面积。

代码:

class Shape {
public:
    virtual double area() = 0;
};

class Circle : public Shape {
public:
    double radius;

    Circle(double radius) : radius(radius) {}

    virtual double area() override {
        return 3.14 * radius * radius;
    }
};

int main() {
    Shape* shape = new Circle(2.5);
    cout << "Area: " << shape->area() << endl;

    return 0;
}

输出:

Area: 19.625

在示例中:

  • Shape 基类定义了一个 area() 虚函数。
  • Circle 派生类使用 override 关键字覆盖 area() 函数。
  • 我们在 main() 函数中创建了一个 Circle 对象,并调用其 area() 函数来计算圆的面积。

以上就是如何重写 C++ 函数的虚函数的详细内容,更多请关注php中文网其它相关文章!