当前位置: 首页 > news >正文

c++父类指针指向子类对象.

父类子类指针函数调用注意事项
1,如果以一个基础类指针指向一个衍生类对象(派生类对象),那么经由该指针只能访问基础类定义的函数(静态联翩)
2,如果以一个衍生类指针指向一个基础类对象,必须先做强制转型动作(explicit cast),这种做法很危险,也不符合生活习惯,在程序设计上也会给程序员带来困扰。(一般不会这么去定义)


3,如果基础类和衍生类定义了相同名称的成员函数,那么通过对象指针调用成员函数时,到底调用那个函数要根据指针的原型来确定,而不是根据指针实际指向的对象类型确定。

4.如果是衍生类取址(&b)给父类指针,调用子类


虚拟函数就是为了对“如果你以一个基础类指针指向一个衍生类对象,那么通过该指针,你只能访问基础类定义的成员函数”这条规则反其道而行之的设计。

相关文章:

  • 杨辉三角,归并排序,石子堆合并,迷宫简单求解,二分查找迭代, 最长公共子序列
  • 安卓 API
  • 2020 yan记
  • 计算机编程 英语词汇
  • CPU内部结构,就绪和阻塞,进程控制块
  • 钉钉怎样加企业群组
  • P(pass)V(vrijgeven)操作,信号量:semaphore 互斥量:mutex PV操作是一种实现进程互斥与同步的有效方法。PV操作与信号量的处理相关, 银行排队 举例: 博物馆参
  • ==和equals的区别 ,int和integer的区别及应用场景
  • int 和 Integer 的区别与作用,java堆内存和栈内存的区别,StringBuilder、StringBuffer 的区别,kotlin和java开发优缺点,内部类分类和使用场景,编码
  • 枚举,注解 ,反射
  • 类加载对象实例,java具有可移植性原因,泛型和object区别,
  • android studio 输出apk过程,apk中的文件格式(bsh文件,dex文件),JVM、DVM、ART的区别,IOS与安卓的区别,ART和Dalvik
  • LruCache使用,基本数据类型 引用类型,面试==和equals的区别 本质,onCreate 和onResume 区别,
  • Fragment 知识梳理, FragmentPagerAdapter ,RecyclerView 知识梳理,sharepreference,IntentService,service交互
  • kotlin 学习,val和var的区别
  • bearychat的java client
  • Docker 笔记(1):介绍、镜像、容器及其基本操作
  • IE报vuex requires a Promise polyfill in this browser问题解决
  • Java知识点总结(JavaIO-打印流)
  • node.js
  • php中curl和soap方式请求服务超时问题
  • vue-cli在webpack的配置文件探究
  • Vultr 教程目录
  • 创建一个Struts2项目maven 方式
  • 番外篇1:在Windows环境下安装JDK
  • 七牛云假注销小指南
  • 什么软件可以剪辑音乐?
  • 提升用户体验的利器——使用Vue-Occupy实现占位效果
  • 我从编程教室毕业
  • 3月7日云栖精选夜读 | RSA 2019安全大会:企业资产管理成行业新风向标,云上安全占绝对优势 ...
  • 400多位云计算专家和开发者,加入了同一个组织 ...
  • ​力扣解法汇总946-验证栈序列
  • ​什么是bug?bug的源头在哪里?
  • #NOIP 2014# day.1 生活大爆炸版 石头剪刀布
  • #快捷键# 大学四年我常用的软件快捷键大全,教你成为电脑高手!!
  • #我与Java虚拟机的故事#连载10: 如何在阿里、腾讯、百度、及字节跳动等公司面试中脱颖而出...
  • (JSP)EL——优化登录界面,获取对象,获取数据
  • (LeetCode 49)Anagrams
  • (poj1.2.1)1970(筛选法模拟)
  • (pytorch进阶之路)CLIP模型 实现图像多模态检索任务
  • (六)什么是Vite——热更新时vite、webpack做了什么
  • (转)大道至简,职场上做人做事做管理
  • ..thread“main“ com.fasterxml.jackson.databind.JsonMappingException: Jackson version is too old 2.3.1
  • .net core MVC 通过 Filters 过滤器拦截请求及响应内容
  • .NET Core WebAPI中使用swagger版本控制,添加注释
  • .net mvc actionresult 返回字符串_.NET架构师知识普及
  • .net 重复调用webservice_Java RMI 远程调用详解,优劣势说明
  • .net反混淆脱壳工具de4dot的使用
  • .secret勒索病毒数据恢复|金蝶、用友、管家婆、OA、速达、ERP等软件数据库恢复
  • :=
  • :not(:first-child)和:not(:last-child)的用法
  • @基于大模型的旅游路线推荐方案
  • [ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧
  • [ASP.NET 控件实作 Day7] 设定工具箱的控件图标
  • [BZOJ3757] 苹果树