C ++父成员函数中虚函数的行为

时间:2017-05-31 10:20:59

标签: c++ virtual

在父成员函数中使用时,我对虚函数的行为有疑问。

实施例

class A {
private:
   vars;
   virtual fn_v() {.....}
public:
   fn_A() {
     fn_v();
     ....
   }

class B : public A {
   ....
public:
   fn_v() {.....}

当我从B的对象调用fn_A()时,将调用虚函数的实现吗?

1 个答案:

答案 0 :(得分:0)

  

当我从B的对象调用fn_A()时会调用虚函数的实现吗?

当然是B中的那个。这就是虚拟功能的意思。如果调用该方法的对象是一个覆盖虚方法的类,则将调用该覆盖。这是相当基本的。