函数重载的重要性不言而明.docVIP

  • 1
  • 0
  • 约9.27千字
  • 约 12页
  • 2017-02-08 发布于重庆
  • 举报
函数重载的重要性不言而明

函数重载的重要性不言而明,但是你知道C++中函数重载是如何实现的呢(虽然本文谈的是C++中函数重载的实现,但我想其它语言也是类似的)?这个可以分解为下面两个问题 1、声明/定义重载函数时,是如何解决命名冲突的?(抛开函数重载不谈,using就是一种解决命名冲突的方法,解决命名冲突还有很多其它的方法,这里就不论述了) 2、当我们调用一个重载的函数时,又是如何去解析的?(即怎么知道调用的是哪个函数呢) 这两个问题是任何支持函数重载的语言都必须要解决的问题!带着这两个问题,我们开始本文的探讨。本文的主要内容如下: ?1、例子引入(现象) 什么是函数重载(what)? 为什么需要函数重载(why)? 2、编译器如何解决命名冲突的? 函数重载为什么不考虑返回值类型 3、重载函数的调用匹配 模凌两可的情况 4、编译器是如何解析重载函数调用的? 根据函数名确定候选函数集 确定可用函数 确定最佳匹配函数 5、总结 1、例子引入(现象) 1.1、什么是函数重载(what)? 函数重载是指在同一作用域内,可以有一组具有相同函数名,不同参数列表的函数,这组函数被称为重载函数。重载函数通常用来命名一组功能相似的函数,这样做减少了函数名的数量,避免了名字空间的污染,对于程序的可读性有很大的好处。 When two or more different declarations are specified fo

文档评论(0)

1亿VIP精品文档

相关文档