C++筆記 | 第2課 函數重載
函數重載 function overloading
C++ 允許函數同名, 這種現象稱爲函數重載.
int abs(int t);
long abs(long t);
double abs(double t)
注意: 調用時要注意參數類型: 比如 1.0 和 1.0f
缺省與函數重載
double f(double x){return x*x;}
double f(double x, double y=0) {return x*x+y*y;}
double x(3.0), y(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(3.0), y(4.0);
// 正確寫法
double f(double x, double y=0.0) {return x*x + y*y;}
函數重載 function overloading
C++允許函數同名, 這種現象稱爲函數重載.
int abs(int t);
long abs(long t);
double abs(double t)
注意: 調用時要注意參數類型: 比如 1.0 和 1.0f
缺省與函數重載
double f(double x){ return x*x;}
double f(double x, double y=0) { return x*x+y*y;}
double x(3.0), y(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(3.0), y(4.0);
//正確寫法
double f(double x, double y=0.0) { return x*x + y*y;}