C++ 函数重载
函数重载
通过函数重载,多个函数可以具有相同的名称但参数不同:
实例
int myFunction(int x) float myFunction(float x) double myFunction(double x, double y)
请思考下面的例子,其中有两个函数用于对不同类型的数字相加:
实例
int plusFuncInt(int x, int y) { return x + y; } double plusFuncDouble(double x, double y) { return x + y; } int main() { int myNum1 = plusFuncInt(8, 5); double myNum2 = plusFuncDouble(4.3, 6.26); cout << "Int: " << myNum1 << "\n"; cout << "Double: " << myNum2; return 0; }
与其定义两个应该执行相同操作的函数,不如重载一个函数。
在下面的例子中,我们重载了 plusFunc
函数,使其同时适用于 int
和 double
类型:
实例
int plusFunc(int x, int y) { return x + y; } double plusFunc(double x, double y) { return x + y; } int main() { int myNum1 = plusFunc(8, 5); double myNum2 = plusFunc(4.3, 6.26); cout << "Int: " << myNum1 << "\n"; cout << "Double: " << myNum2; return 0; }
注意:只要参数的数量和/或类型不同,多个函数就可以拥有相同的名称。