代码片段

2023-11-09

以下代码是从Stack Overflow上看到的,对于C++ virtual的特性挺有参考意义的,于是记录下来:

class A{
    public:
    void f(){
        std::cout << "A" << std::endl;
    }
};

class B : public A{
    public:
    virtual void f(){
        std::cout << "B" << std::endl;
    }
};

class C : public B{
    public:
    void f(){
        std::cout << "C" << std::endl;
    }
};

int main()
{
	C c;
    A& aref = c;
    aref.f();
    B& bref = c;
    bref.f();
	return 0;
}

运行结果是什么?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

代码片段 的相关文章

随机推荐

  • 群晖NAS和绿联NAS的Docker安装odoo16社区版和企业版教程

    社区版安装 1 在群晖后台安装好docker套件 并去控制面板 终端机和SNMP打开SSH功能 绿联nas的同样进管理界面安装docker套件 绿联打开SSH方法是在设备 远程调试下面 把远程调试打开 然后就会跳出来 验证码 然后下面这一段
  • form表单传值之Form表单对象

    function check var formData new FormData formData append name input name name val formData append pid select name pid va
  • win服务器创建文件夹命令行,怎样在windows的cmd命令行下创建删除文件和文件夹...

    在window下我们往往通过 右键 gt 新建 命令来创建文件和文件夹 但有时会遇到 以点开头的文件 比如 log 这种文件用鼠标新建是新建不了的 这时我们可以在DOS下用命令行来创建 所以在这里我将平时在dos里创建文件和文件夹的方法列举
  • 为什么应该用模块取代C/C++中的头文件?

    原文地址 http www csdn net article 2012 11 28 2812274 module replace C based languages headers 本文整理自Apple C 工程师Doug Gregor的演
  • 关于“异步复位,同步复位,异步复位同步释放”的理解

    文章目录 1 异步复位 2 同步复位 3 异步复位同步释放 今天好好理一理异步复位 同步复位 以及亚稳态中的异步复位同步释放 1 异步复位 一般让复位信号低电平有效 复位信号不受时钟的控制 只要复位信号有效 那么电路就会复位 对应的写法为
  • 十五、Redis——网络模型

    目录 1 1 用户空间和内核态空间 1 2 网络模型 阻塞IO 1 3 网络模型 非阻塞IO 1 4 网络模型 IO多路复用 总结 编辑 1 5 网络模型 信号驱动IO 1 6 网络模型 异步IO 1 7 同步和异步划分 1 8 Redis
  • React根据条件渲染不同的组件

    最近在做一个电商后台管理项目 碰到了一个要根据前面的条件不同来渲染不同的组件 如下图所示 要根据商品的分类来显示不同的商品属性 最开始以为简单的使用switch来判断条件即可 但是在react组件当中 一个函数是不能返回另一个函数的 这就导
  • linux 命令之nc

    nc使用示例 端口扫描nc v w 2 192 168 2 34 z 21 24nc connect to 192 168 2 34 port 21 tcp failed Connection refusedConnection to 19
  • 数字后端基本概念介绍——Track

    今天要给大家介绍的数字后端基本概念是Track Track是指走线轨道 和row一样 可以约束走线器的走线方向 信号线通常必须走在track上 Std Cell的高度通常用metal2 track pitch来表示 常用的 std cell
  • 出租车费

    题目描述 某市出租车计价规则如下 起步4公里10元 即使你的行程没超过4公里 接下来的4公里 每公里2元 之后每公里2 4元 行程的最后一段即使不到1公里 也当作1公里计费 一个乘客可以根据行程公里数合理安排坐车方式来使自己的打车费最小 例
  • 关于 栈 和 队列,你还在犯迷糊吗?

    我是目录 1 队列 1 Queue 队列 2 Deque 双向队列 2 栈 从数据结构角度来看 栈 和 队列 都是一种特殊的线性结构 只是对 插入 删除 元素的方式做了限制 栈 先进后出 push pop peek 的时间复杂度都是 O 1
  • git rebase小计

    http www cnblogs com kym archive 2010 08 12 1797937 html git rebase 顾名思义 就是重新定义 re 起点 base 的作用 即重新定义分支的版本库状态 要搞清楚这个东西 要先
  • 74160同步置数法解析(以接成同步八进制计数器为例)

    我们先来看一下电路逻辑图 从中提取核心信息 将QD QC QB QA接成0010是为了配合LOAD引脚使用 以将74160的状态置为0010 计数器的最大状态为1001 当74160到达1001时 通过7400N与非门将LOAD引脚置为0
  • Linux 下安装zabbix

    一 下载安装zabbix 1 下载zabbix root localhost wget https mirrors tuna tsinghua edu cn zabbix zabbix 4 0 rhel 7 x86 64 zabbix re
  • OFFICE2016用过一段时间后正版密钥显示未激活问题

    转自百度知道 用户 kay陈健 侵删 一般出现这种问题是你电脑中先安装了一个版本的office 但是没有激活 没有将其卸载干净 然后又安装了另外一个版本的office 后者激活了 我也遇到了这个问题 目前已按如下方法解决 1 运行下面的命令
  • Arcgis 重装 的 license 问题

    1 卸载不干净 C arcgis安装目录 C ProgramData ESRI C Program Files x86 Common Files 2 注册表 删除有关Arcgis和ESRI的注册表 我是一条分割线 最后 我学会了重装系统
  • if...else; 嵌套if...else

    if else结构 如果怎么样 否则怎么样 if 分支条件 当条件满足时执行 else 当条件不满足时执行 注意 分支条件返回的一定是一个布尔类型 当分支中有且只有一行代码的时候 是可以省略大括号 gt 不推荐 和 之间不能添加任何符号 i
  • Java中 类名+方法名(){}的意思

    public class GetVersion public VersionBean get version code Context context String packagename if getPackageInfo context
  • pandoc 使用方法

    我是使用的 typora mac 版本 在下载 pandoc 完成后使用 pandoc 导出word时出现闪退情况 导致不能成功导出 然后就搜索到 pandoc 的命令行方法 以此记录下来 1 进入https pandoc org 下载 p
  • 代码片段

    以下代码是从Stack Overflow上看到的 对于C virtual的特性挺有参考意义的 于是记录下来 class A public void f std cout lt lt A lt lt std endl class B publ