C++筆記 | 第2課 函數重載

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;}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章