函數(shù)重載允許在一個類或結(jié)構(gòu)中創(chuàng)建同名但參數(shù)列表不同的多個函數(shù),針對不同的參數(shù)組合提供特定行為。語法如下:定義返回類型、函數(shù)名和第一個參數(shù)列表。定義返回類型、函數(shù)名和第二個參數(shù)列表。可繼續(xù)定義更多具有不同參數(shù)列表的重載函數(shù)。
C++ 函數(shù)重載:定義、語法和實戰(zhàn)
定義
函數(shù)重載允許在一個類或結(jié)構(gòu)中創(chuàng)建同名但具有不同簽名(參數(shù)列表不同)的多個函數(shù)。每個重載函數(shù)都將針對不同的參數(shù)結(jié)合提供特定的行為。
語法
函數(shù)重載的語法如下:
return_type function_name(parameter_list_1); return_type function_name(parameter_list_2); ... return_type function_name(parameter_list_n);
登錄后復(fù)制
其中:
return_type
是函數(shù)的返回類型。function_name
是函數(shù)的名稱。parameter_list_i
是第 i 個重載函數(shù)的參數(shù)列表。
實戰(zhàn)案例
考慮以下示例:
#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; }
登錄后復(fù)制
在這個例子中,我們定義了兩個 area
函數(shù)重載:
area(double radius)
:計算圓的面積,接受一個 double 參數(shù)(半徑)。
area(double length, double width)
:計算矩形的面積,接受兩個 double 參數(shù)(長和寬)。
main
函數(shù)調(diào)用這兩個重載函數(shù)。因為參數(shù)的數(shù)量和類型不同,編譯器可以分辨出哪個 area
函數(shù)重載應(yīng)該被調(diào)用。