虚函数的作用
来源:互联网 发布:域名绑定服务器ip 编辑:程序博客网 时间:2024/06/01 23:15
什么是虚函数?为什么要用到虚函数?(场景)
例如:程序中,在Circle类中定义了 area函数,在Circle类的派生类Cylinder中也定义了一个area函数。这两个函数不仅名字相同,而且参数个数相同(均为0),但功能不同,函数体是不同的。前者的作用是求圆面积,后者的作用是求圆柱体的表面积。
如果想调用cy1 中的直接基类Circle的area函数,应当表示为 cy1.Circle::area()。用这种方法来区分两个同名的函数。但是这样做 很不方便。(提出了需求)
人们提出这样的设想,能否用同一个调用形式,既能调用派生类又能调用基类的同名函数。在程序中不是通过不同的对象名去调用不同派生层次中的同名函数,而是通过指针调用它们。例如,用同一个语句“pt->display( );”可以调用不同派生层次中的display函数,只需在调用前给指针变量 pt 赋以不同的值(使之指向不同的类对象)即可。
C++中的虚函数就是用来解决这个问题的。虚函数的作用是允许在派生类中重新定义与基类同名的函数,并且可以通过基类指针或引用来访问基类和派生类中的同名函数。
阅读全文
0 0
- 虚函数的作用
- 虚函数的作用
- 虚函数的作用
- 虚函数的作用
- 虚函数的作用
- 虚函数的作用
- 虚函数的作用
- 虚函数的作用
- 虚函数的作用
- 虚函数的作用
- 虚函数的作用
- 虚函数的作用
- 虚函数的作用
- 虚函数的作用
- 虚函数的作用
- 虚函数的作用
- 虚函数的作用
- 虚函数的作用
- RogueDome01
- Java的几个概念AOP、IOC、DI、DIP、工厂模式、IOC容器
- 分布式缓存Redis Centos下单节点安装
- Linux Lvs负载均衡集群技术(一)
- <一> I.MX6Q(TQIMX6Q/TQE9)学习笔记——开发板的选择
- 虚函数的作用
- GPS定位系统及协议介绍
- iphone 8什么时候上市将于9月12日揭晓!值得期待
- 最新:适配Xcode9.0与Swift4.0
- Swift4.0语法新特性
- iOS App 稳定性指标及监测精选
- 2017最新App Store 审核指南中文版
- PANDAS 数据合并与重塑(join/merge篇)
- 简单的侧滑菜单SlidingMenu