虚函数的作用与定义
时间: 2024-02-27 09:56:39 浏览: 57
虚函数是在基类中声明的函数,可以被派生类重写并且在运行时动态绑定。虚函数的作用是允许在基类中定义通用的行为,而在派生类中可以根据自己的需要进行定制化的实现。它可以实现多态性,即同一个函数在不同的上下文中具有不同的行为。
虚函数的定义在函数声明前加上关键字“virtual”,例如:
```cpp
class Animal {
public:
virtual void speak() {
std::cout << "I am an animal." << std::endl;
}
};
class Dog : public Animal {
public:
void speak() override {
std::cout << "I am a dog." << std::endl;
}
};
```
在这个例子中,Animal类中的speak()函数被声明为虚函数,而Dog类中的speak()函数则重写了Animal类中的speak()函数,实现了自己的行为。当通过Animal类型的指针或引用调用speak()函数时,实际上运行的是Dog类中的speak()函数,这就是虚函数的动态绑定。
阅读全文