合作机构:阿里云 / 腾讯云 / 亚马逊云 / DreamHost / NameSilo / INWX / GODADDY / 百度统计
虚函数是C++面向对象编程中的精髓之一,它为我们提供了多态性的魔法钥匙。
在C++中,虚函数是一种允许在派生类中重新定义的函数。其背后的核心思想是多态性,通过在基类中声明虚函数,我们可以以一种统一的方式处理不同类型的对象。让我们先来看一个简单的例子:
#include <iostream>
using namespace std;
class Shape {
public:
virtual void draw() {
cout << "Drawing a shape" << endl;
}
};
class Circle : public Shape {
public:
void draw() override {
cout << "Drawing a circle" << endl;
}
};
class Square : public Shape {
public:
void draw() override {
cout << "Drawing a square" << endl;
}
};
int main() {
Circle circle;
Square square;
// 使用基类指针调用虚函数,实现多态
Shape* shape1 = &circle;
Shape* shape2 = &square
shape1->draw(); // 输出 "Drawing a circle"
shape2->draw(); // 输出 "Drawing a square"
return 0;
}
TOP