函數重載允許在一個類或結構中創建同名但參數列表不同的多個函數,針對不同的參數組合提供特定行為。語法如下:定義返回類型、函數名和第一個參數列表。定義返回類型、函數名和第二個參數列表。可繼續定義更多具有不同參數列表的重載函數。
C++ 函數重載:定義、語法和實戰
定義
函數重載允許在一個類或結構中創建同名但具有不同簽名(參數列表不同)的多個函數。每個重載函數都將針對不同的參數結合提供特定的行為。
語法
函數重載的語法如下:
return_type function_name(parameter_list_1); return_type function_name(parameter_list_2); ... return_type function_name(parameter_list_n);
登錄后復制
其中:
return_type
是函數的返回類型。function_name
是函數的名稱。parameter_list_i
是第 i 個重載函數的參數列表。
實戰案例
考慮以下示例:
#include <iostream> using namespace std; // 計算圓的面積 double area(double radius) { return 3.14 * radius * radius; } // 計算矩形的面積 double area(double length, double width) { return length * width; } int main() { cout << "圓的面積: " << area(5) << endl; cout << "矩形的面積: " << area(5, 10) << endl; return 0; }
登錄后復制
在這個例子中,我們定義了兩個 area
函數重載:
area(double radius)
:計算圓的面積,接受一個 double 參數(半徑)。
area(double length, double width)
:計算矩形的面積,接受兩個 double 參數(長和寬)。
main
函數調用這兩個重載函數。因為參數的數量和類型不同,編譯器可以分辨出哪個 area
函數重載應該被調用。