博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
说一下函数重载和覆盖的区别
阅读量:6823 次
发布时间:2019-06-26

本文共 360 字,大约阅读时间需要 1 分钟。

     函数的覆盖(overlap)是指子类重新定义父类的虚函数的做法,会用到关键字“Virtual",而函数重载(overload)是通过函数参数、函数返回类型等的不同来实现的。

    对重载函数而言,对于函数的调用,是静态的,也就是说,他们的地址在编译期间就已经绑定了,因此,重载和多态无关。

    真正与多态相关的是覆盖,子类重新定义了父类的虚函数后,父类指针根据赋予它的不同的子类指针,动态的调用属于子类的该函数,这样的函数在编译期间是无法确定的(调用的子类的虚函数的地址无法给出)。因此,这样的函数地址是在运行期间绑定的(晚绑定)。结论就是重载只是一种语言特征,与多态无关,与面向对象也无关。

转载于:https://www.cnblogs.com/CBDoctor/archive/2012/08/13/2637021.html

你可能感兴趣的文章
java 获取时间 和 转换时间
查看>>
Redis主从复制
查看>>
mysql-5.6.26 主主复制
查看>>
SpringMVC权限管理
查看>>
ET120以太网环回器介绍
查看>>
ActiveMQ快速入门
查看>>
java自学篇之程序设计基础
查看>>
swiper的基础使用(五)
查看>>
Windows Server 2012R2 Hyper-v之虚拟机复制(2)
查看>>
大数据各种实用网站
查看>>
win7安装laravel
查看>>
Oracle 各后台进程功能说明
查看>>
屏蔽storm ui的kill功能
查看>>
我的友情链接
查看>>
Oracle Decode函数的使用
查看>>
MSF学习笔记
查看>>
经典脚本案例--check memory
查看>>
20.31 expect脚本同步文件;20.32 expect脚本指定host和要同步的文件;20.33 构建文件分发系统;20.34...
查看>>
CentOS单用户与救援模式
查看>>
postfix 源码centos7上搭建及错误提示---亲测
查看>>