时间:2014.07.01
地点:基地
-----------------------------------------------------------------------------------------
命名空间对函数匹配的影响主要表现在:使用using声明或using指示能将某些函数添加到候选函数集(不同版本)中。
一、与实参相关的查找与重载
对于接受类类型实参的函数而言,其名字查找是在实参的类所在的命名空间中进行。我们将在实参类以及实参类的基类所属的命名空间中搜寻候选函数。这些命名空间中所有与被调函数同名的函数都将被添加到候选集中,即使其中某些函数在调用语句处不可见。比如:
namespace NS
{
class Quote{/*......*/};
void Display(const Quote&){/*......*/}
}
在命名空间NS下,我们定义了一个Quote类和Display函数,该函数接受Quo