C++ 虚函数的详解及简单实例
作者:野牛程序员:2024-01-22 17:57:31 C++阅读 2712
C++中,虚函数是一种允许在派生类中重写基类函数的机制。通过在基类函数声明中使用关键字 virtual
,可以将其声明为虚函数。派生类可以覆盖(重写)这些虚函数,从而提供特定于派生类的实现。
以下是虚函数的简单示例:
#include <iostream> // 基类 class Shape { public: // 虚函数 virtual void draw() const { std::cout << "Drawing a shape" << std::endl; } }; // 派生类1 class Circle : public Shape { public: // 重写基类的虚函数 void draw() const override { std::cout << "Drawing a circle" << std::endl; } }; // 派生类2 class Square : public Shape { public: // 重写基类的虚函数 void draw() const override { std::cout << "Drawing a square" << std::endl; } }; // 客户端代码 void drawShape(const Shape& shape) { // 调用虚函数,将在运行时确定调用的实际函数 shape.draw(); } int main() { Circle circle; Square square; // 通过基类指针调用虚函数 drawShape(circle); drawShape(square); return 0; }
在上述示例中,Shape
是基类,它有一个虚函数 draw
。Circle
和 Square
分别是 Shape
的派生类,它们都重写了 draw
函数。在 main
函数中,通过基类指针调用 drawShape
函数,实现了运行时多态性,具体调用哪个版本的 draw
函数由对象的实际类型确定。
这就是C++虚函数的基本概念和简单实例。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

- 上一篇:C++中回调函数及函数指针的实例详解
- 下一篇:C++STL库常用库函数总结