【无标题】

复制代码
#include <iostream>
using namespace std;

class Father
{
  public:
    Father() { A(); }
     void virtual A() { cout<<"Father::A()"<<endl; }
     void B() { cout<<"Father::B()"<<endl; A();}
};
class Son : public Father
{
  public:
    void A() { cout<<"Son::A()"<<endl; }
    void B() { cout<<"Son::B()"<<endl; }
};
int main()
{
  Father f;//father::A
  Son s;//father::a!!!
  Father *pf=&s;
  pf->A();
 
  pf->B();
  s.A();//son::a
  s.B();//son::b
}

关注到如果虚函数是在Father()的构造函数中,是不体现虚特性的,而在其它地方是体现的,比如关注void B()中的A()

相关推荐
Star在努力1 分钟前
C语言复习八(2025.11.18)
c语言·算法·排序算法
赖small强7 分钟前
【Linux C/C++开发】第26章:系统级综合项目理论
linux·c语言·c++
南山安9 分钟前
从反转字符串看透面试官的“内心戏”:你的算法思维到底怎么样?
javascript·算法·面试
雪不下15 分钟前
计算机中的数学:概率(2)
算法
zs宝来了18 分钟前
HOT100-二分查找类型题
算法
_w_z_j_20 分钟前
数组中的最长连续子序列
数据结构·算法
地平线开发者22 分钟前
征程 6E/M 计算平台部署指南
算法·自动驾驶
栗子~~24 分钟前
java-根据word模板灵活生成word文档-demo
java·开发语言·word
mit6.8241 小时前
数位dp|组合数学|差分emplace
算法
2301_764441331 小时前
新能源汽车电磁辐射高级预测
python·算法·数学建模·汽车