目录
函数重载的含义
重载函数使用注意事项
几种特殊情况
函数重载的含义
函数重载使得能够用不同的参数列表调用多个同名的函数。可以通过函数重载设计一系列函数,它们完成相同的工作,但使用不同的参数列表。
函数重载的关键是函数的参数列表——也被称为函数特征标。如果两个函数的参数数目和类型相同,同时参数的排列顺序也相同,则它们的特征标相同,而变量名是无关紧要的。C++允许定义名称相同的函数,条件是它们的特征标不同。如果参数数目或参数类型不同,则特征标也不同。
例如,定义一组原型如下的print()函数:
void print(const char* str, int width);
void print(double d, int width);
void print(int i, int width);
void print(const char* str);
这几个函数的函数名称相同,但它们的特征标不同,因此可以这样定义。在使用print()函数时,编译器将根据参数类型和数目使用有相应特征标的原型。
print("cake", 3);//use print(const char* str, int width)
print(2.0, 3);// use print(double d, int width)
print(2, 3);