C++的多态性允许我们通过基类指针或引用来调用派生类的成员函数。处理继承关系时,多态性主要通过虚函数(virtual function)实现。以下是如何使用虚函数处理继承关系的简要说明:
virtual
声明一个成员函数为虚函数。这样,派生类中的同名函数将自动成为虚函数。class Base {
public:
virtual void show() {
cout << "Base class show()" << endl;
}
};
class Derived : public Base {
public:
void show() override {
cout << "Derived class show()" << endl;
}
};
int main() {
Base *b = new Derived();
b->show(); // 输出 "Derived class show()"
delete b;
return 0;
}
在这个例子中,我们创建了一个指向Derived
对象的Base
指针。当我们通过该指针调用show()
函数时,实际执行的是Derived
类中的实现,而不是Base
类中的实现。这就是多态性在C++中处理继承关系的方式。