class A{
public:
virtual void f(){ cout << "A::f()"<<endl;}
};class B:public A{
public:virtual void f(){cout << "B::f()"<<endl;}
};int main()
{A a;B b;A *p = &b;p->f();  //发生了多态,这里调用的是B::f()。因为有upcast,所以是多态。a = b;  //这里只是完成了一个赋值操作p = &a;p->f();   //调用的是A::f()return 0;
}

转载于:https://www.cnblogs.com/buddho/p/10607173.html

没有upcast 也不会发生多态相关推荐

  1. linkin大话面向对象--多态

    java引用变量有2个类型,一个是编译时类型,一个是运行时类型: 编译时类型:声明的类型,把它看做是什么东西 运行时类型:真正的类型,实际上指的是什么东西 如果编译时类型和运行时类型不同,就出现多态. ...

  2. 深入剖析C++多态、VPTR指针、虚函数表

    在讲多态之前,我们先来说说关于多态的一个基石------类型兼容性原则. 一.背景知识 1.类型兼容性原则 类型兼容规则是指在需要基类对象的任何地方,都可以使用公有派生类的对象来替代.通过公有继承,派 ...

  3. C++与Java多态的区别

    多态是指用父指针指向不同子类对象时,调用其共有的函数,不同的子类会有不同的行为.虽然C++和Java都具有多态机制,但是他们的实现不同,使用时的效果也会略有不同. 在C++中 普通函数调用:具体调用哪 ...

  4. [C++]用多态实现简单异常处理

    案例说明 设计一个数组类MyArray,重载[]符号操作, 数组初始化时,对数组的个数进行有效检查 1)index<0 抛出异常eNegtive 2)index=0 抛出异常eZero 3)in ...

  5. day10:多态,文件

    多态 基本概念 类别 : 静态多态:函数重载和运算符重载数据静态多态, 动态多态:派生类和虚函数实现运行时多态 区别:   静态多态的函数地址早绑定--编译阶段确定函数地址 动态多态的函数地址晚绑定- ...

  6. C++核心编程:P10->类和对象----多态

    本系列文章为黑马程序员C++教程学习笔记,前面的系列文章链接如下 C++核心编程:P1->程序的内存模型 C++核心编程:P2->引用 C++核心编程:P3->函数提高 C++核心编 ...

  7. 典型问题分析(十五)

    在经过一段时间的编写,我们的数据结构库已经有了一定的规模.那么我们之前编写的代码就没有一点 bug 吗?之前每个代码都是经过测试了的,因此阔能是没有 bug 的,但是我们还是来对它进行分析,看看究竟是 ...

  8. StaticLinkList

    文章目录 1 静态单链表的出现原因 2 静态单链表的实现思路 3 继承关系图 4 代码实现 5 StaticLinkList需要增加析构函数吗 1 静态单链表的出现原因 如果需要频繁的删除元素,并且数 ...

  9. 数据结构开发(7):典型问题分析(Bugfix)

    0.目录 1.创建异常对象时的空指针问题 2.LinkList 中的数据元素删除 3.LinkList 中遍历操作与删除操作的混合使用 4.StaticLinkList 中数据元素删除时的效率问题 5 ...

  10. java 面试指南_Java面试参考指南–第1部分

    java 面试指南 JAVA面向对象的概念 Java in基于面向对象的概念,它允许更高级别的抽象以实际方式解决任何问题. 面向对象的方法将实际对象中的问题解决方案概念化,更易于在整个应用程序中重用. ...

最新文章

  1. Niblack二值化方法的实现
  2. ETHNET DHCP的两种方式
  3. 归并排序模板(附求逆序对)
  4. matlab读取.xyz文件及任意有间隔符数据
  5. 【算法学习笔记】83.排序辅助 动态规划 SJTU OJ 1282 修路
  6. Adaboost算法原理分析和实例+代码(转载)
  7. CTF中的EXP编写技巧 zio库的使用
  8. 最佳论文!牛津大学揭示梯度下降复杂度理论
  9. netty在项目中实际使用_公房动迁中,实际使用人享有哪些利益?
  10. 关于 Hibernate 中的“脏数据”、“脏对象”
  11. 面试python说会为什么_Python面试必须要看的15个问题
  12. spss20安装许可证代码_Spss 23软件下载与安装
  13. 色彩搭配原理与技巧?
  14. SMT操作手册V1.0 模板
  15. 脑科学和类脑智能技术综述学习笔记
  16. pyqt5 点击开始按钮,执行事件,中途点击暂停按钮后,所执行的事件暂停
  17. 隐马尔可夫模型(三): 算法分类、解决方法
  18. 超详细从零记录Hadoop2.7.3完全分布式集群部署过程
  19. Redirected Walking
  20. Linux 网络设置(ifconfig、route、traceroute、netstat、ss、nslookup、dig、ping状态返回分析)

热门文章

  1. linux空格转义,如何在bash循环列表中转义空格?
  2. DNS服务器的基本工作
  3. presto Slice入门
  4. scala 模式匹配概念及用法示例
  5. Dediprog EM100Pro-G2 安装与配置教程
  6. 根据微信的公众号获取公众号的二维码 根据公众号获得二维码的图片
  7. console觉醒之路,打印个动画如何?
  8. 台湾厂商:大陆投资DRAM工厂可能破坏全球市场
  9. PHP list() 函数
  10. 向CentOS6.6服务器安装confluence5.4.4