C++ 中的虚函数和运行时多态性


C++ 中的虚函数用于创建一个基类指针列表并调用任何派生类的函数,而无需知道派生类对象的种类。虚函数在运行时在较晚时解析。

虚函数的主要用处是实现运行时多态性。运行时多态性只能通过基类类型的指针(或引用)实现。此外,基类指针可以指向基类对象以及派生类对象。在上面的代码中,基类指针‘b’包含派生类‘d’对象的地址。

示例代码

#include<iostream>
using namespace std;
class B {
   public:
      virtual void s() {
         cout<<" In Base \n";
      }
};
class D: public B {
   public:
      void s() {
         cout<<"In Derived \n";
      }
};
int main(void) {
   D d; // An object of class D
   B *b= &d; // A pointer of type B* pointing to d
   b->s(); // prints "D::s() called"
   return 0;
}

输出

In Derived

更新于:30-Jul-2019

6K+ 浏览

开启你的 职业生涯

完成课程即可获得认证

开始
广告
© . All rights reserved.