C++ 笔记 | 第2课 函数重载
函数重载 function overloading
C++ 允许函数同名, 这种现象称为函数重载.
C++ |
---|
| int abs(int t);
long abs(long t);
double abs(double t)
|
注意: 调用时要注意参数类型: 比如 1.0
和 1.0f
缺省与函数重载
C++ |
---|
| double f(double x){return x * x;}
double f(double x, double y = 0) {return x * x + y * y;}
double x = f(3.0), y = f(4.0);
// 出错!由于函数有缺省参数说明,导致编译器根据 f(x) 调用无法静态束定应该调用 f(x) 还是 f(x, 0.0)
// 正确写法
double f(double x){return x * x;}
double f(double x, double y) {return x * x + y * y;}
double x = f(3.0), y = f(4.0);
// 正确写法
double f(double x, double y = 0.0) {return x * x + y * y;}
|