易百教程

23、虚函数是什么?

  • 虚函数用于替换基类提供的实现。 只要有问题的对象实际上是派生类的,总是调用替换,即使该对象是通过基指针而不是派生指针访问的。
  • 虚函数是存在于基类中并由派生类重新定义的成员函数。
  • 当在基类和派生类中使用相同的函数名时,基类中的函数使用关键字 virtual 声明。
  • 当函数变为虚函数时,C++ 会在运行时根据基类指针指向的对象的类型来确定调用哪个函数。 因此,通过使基类指针指向不同的对象,我们可以执行不同版本的虚函数。

虚函数规则:

  • 虚函数应该是某个类的成员。
  • 虚函数不能是静态成员。
  • 使用对象指针调用虚函数。
  • 它可以是另一个班级的朋友。
  • C++ 不包含虚拟构造函数,但可以具有虚拟析构函数。