首頁  >  文章  >  後端開發  >  C++ 函式重載與函式預設參數

C++ 函式重載與函式預設參數

王林
王林原創
2024-04-13 18:03:02663瀏覽

是的,C 允許函數重載和函數預設參數。函數重載可建立具有相同名稱但不同參數清單的函數,編譯器根據參數類型決定呼叫哪個重載。函數預設參數可為部分參數提供預設值,在沒有提供參數時使用預設值。

C++ 函数重载和函数默认参数

C 函數重載與函數預設參數

函數重載

#函數重載允許我們在同一個類別中定義具有相同名稱但參數列表不同的多個函數。編譯器將根據呼叫時提供的參數類型來決定呼叫哪個重載函數。

語法:

return_type function_name(parameter_list_1);
return_type function_name(parameter_list_2);
...

函數預設參數

函數預設參數允許我們在宣告函數時為某些參數提供預設值.如果在呼叫時未提供這些參數,則使用預設值。

語法:

return_type function_name(parameter_type parameter_name = default_value);

實戰案例

假設我們有一個函數calculateArea,該函數可以計算圓形或長方形的面積。我們可以使用函數重載來實作:

#include <iostream>

using namespace std;

// 计算圆形的面积
double calculateArea(double radius) {
  return 3.14159 * radius * radius;
}

// 计算矩形的面积
double calculateArea(double length, double width) {
  return length * width;
}

int main() {
  double radius, length, width;

  // 计算圆形的面积
  cout << "Enter the radius: ";
  cin >> radius;
  cout << "The area of the circle is: " << calculateArea(radius) << endl;

  // 计算矩形的面积
  cout << "Enter the length and width of the rectangle: ";
  cin >> length >> width;
  cout << "The area of the rectangle is: " << calculateArea(length, width) << endl;

  return 0;
}

在這個案例中,calculateArea 函數有兩個重載:

  • calculateArea(double radius) 用於計算圓形的面積,並使用函數預設參數為radius 指定預設值0。
  • calculateArea(double length, double width) 用來計算矩形的面積,沒有使用函數預設參數。

以上是C++ 函式重載與函式預設參數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn