【无标题】

复制代码
#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()

相关推荐
你挚爱的强哥6 小时前
【exportExcel】单纯靠js不用任何其他第三方插件导出xls格式文件
开发语言·javascript·ecmascript
LuminousCPP7 小时前
数据结构-时间与复杂度|时间/空间复杂度 + 两道力扣练习 + 二分查找复盘
c语言·数据结构·经验分享·算法·leetcode
Nil2087 小时前
leetcode 三数之和
数据结构·算法·leetcode
Hello_Damon_Nikola7 小时前
AC7911从入门到精通
开发语言·嵌入式硬件·物联网·php
worxfr7 小时前
Go 并发控制:从 Channel 方向约束到实战模式
开发语言·后端·golang
带鱼吃猫7 小时前
预处理器:宏、运算符与条件编译
c语言·开发语言
小小龙学IT7 小时前
C++ std::vector 底层实现深度解析:内存布局、扩容策略、移动语义与迭代器失效
开发语言·c++·算法
eBest数字化转型方案7 小时前
从工程视角拆解冰柜资产管理:拍照识别 pipeline、纯净度算法与 IoT 选型踩坑
人工智能·物联网·算法
Interview Aid1127 小时前
Roblox OA 面经|小游戏+编程双修,Coding 两题满分通过
算法
码匠许师傅7 小时前
【C++ 面试真题】聊聊 volatile 和 mutable
开发语言·c++·面试