您的位置:首页 > 编程语言 > C语言/C++

《C++ primer》学习笔记之三十二:function overload resolution概述

2006-04-14 01:48 337 查看
function overload resolution (注意这里的function不是类的成员)
hidden: 两个scope,外面的叫"外scope",内面的叫"内scope",则对内scope内的函数调用来说,内scope内定义的函数会hidden外scope内定义的函数(既使参数不同也会hidden)。
overload:同一个scope内,有相同名字不同规格(主要是参数不同)的函数就是overload函数

对于一个函数调用,编译器寻找合适的函数定义的过程分三步:
1. 寻找“候选”(candidate)的函数集合
2. 在"候选集合"中寻找“可用”(viable)的函数集合
3. 在"可用集合"中寻找"最佳"(best)函数
这三步是依次执行的, 如果1,2找到的集合为空,则失败;如果3步找到多个,则失败。注意,不会因为后面的一步失败而回过来再执行前面的步骤。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: