Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Lebihan beban fungsi C++ dan parameter lalai fungsi

Lebihan beban fungsi C++ dan parameter lalai fungsi

王林
王林asal
2024-04-13 18:03:02713semak imbas

Ya, C++ membenarkan lebihan fungsi dan parameter lalai fungsi. Lebihan fungsi menghasilkan fungsi dengan nama yang sama tetapi senarai parameter yang berbeza, dan pengkompil memutuskan beban yang lebih untuk dipanggil berdasarkan jenis parameter. Parameter lalai fungsi boleh memberikan nilai lalai untuk beberapa parameter dan menggunakan nilai lalai apabila tiada parameter disediakan.

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

C++ Overloading Fungsi dan Parameter Lalai Fungsi

Function Overloading

Function Overloading membolehkan kami mentakrifkan berbilang fungsi dalam senarai kelas yang sama tetapi berbeza parameter. Pengkompil akan memutuskan fungsi terlampau beban untuk dipanggil berdasarkan jenis hujah yang disediakan semasa memanggil.

Sintaks:

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

Parameter lalai fungsi

Parameter lalai fungsi membolehkan kami menyediakan nilai lalai untuk parameter tertentu semasa mengisytiharkan fungsi. Jika parameter ini tidak disediakan semasa memanggil, nilai lalai digunakan.

Sintaks:

return_type function_name(parameter_type parameter_name = default_value);

Kes praktikal

Katakan kita mempunyai fungsi kiraLuas, yang boleh mengira luas bulatan atau segi empat tepat. Kita boleh melakukan ini menggunakan lebihan muatan: 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)rrreee
  • Dalam kes ini, fungsi calculateArea mempunyai dua lebihan:
  • calculateArea(double radius) Digunakan untuk hitung luas bulatan dan gunakan argumen lalai fungsi untuk menentukan nilai lalai 0 untuk radius. 🎜
  • calculateArea(double length, double width) digunakan untuk mengira luas segi empat tepat tanpa menggunakan parameter lalai fungsi. 🎜🎜

Atas ialah kandungan terperinci Lebihan beban fungsi C++ dan parameter lalai fungsi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn