Rumah >pembangunan bahagian belakang >C++ >Apakah peraturan untuk membebankan fungsi dalam C++?

Apakah peraturan untuk membebankan fungsi dalam C++?

PHPz
PHPzasal
2024-04-11 14:27:02673semak imbas

Jawapan: Fungsi berlebihan dalam C++ membolehkan mencipta fungsi dengan nama yang sama tetapi senarai parameter yang berbeza. Senarai parameter mesti berbeza, termasuk jenis, nombor dan susunan. Jenis pulangan boleh sama atau berbeza. Fungsi dengan hanya nama yang sama tidak boleh dibebankan.

C++ 函数重载的规则是什么?

Peraturan Lebih Muatan Fungsi C++

Lebih muatan fungsi ialah keupayaan untuk mencipta fungsi dengan nama yang sama tetapi senarai parameter yang berbeza. Lebihan fungsi dalam C++ mengikut peraturan berikut:

  • Senarai parameter mesti berbeza: Fungsi lebihan mesti mempunyai senarai parameter yang berbeza, yang bermaksud:

    • jenis parameter berbeza
    • nombor tertib parameter berbeza
  • Jenis pemulangan tidak relevan: Jenis fungsi pemulangan boleh sama atau berbeza.
  • Tidak boleh membebankan fungsi dengan nama yang sama sahaja: Fungsi dengan nama yang sama tetapi senarai parameter yang berbeza tidak boleh terlebih muatan berdasarkan nama sahaja.

Kes praktikal:

Pertimbangkan program yang mengira luas bulatan dan segi empat tepat. Kita boleh menggunakan lebihan beban fungsi untuk mencipta dua fungsi dengan nama yang sama, tetapi setiap fungsi mengira kawasan untuk bentuk yang berbeza:

// 为圆计算面积
double area(double radius) {
  return 3.14 * radius * radius;
}

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

int main() {
  // 计算圆形的面积
  cout << "圆形面积:" << area(5.0) << endl;

  // 计算矩形的面积
  cout << "矩形面积:" << area(2.0, 4.0) << endl;

  return 0;
}

Dalam contoh di atas, kami mentakrifkan dua fungsi

, satu menerima hujah jejari dan satu lagi panjang dan parameter lebar. Pengkompil boleh mengenal pasti fungsi khusus untuk dipanggil berdasarkan senarai hujah yang diluluskan. area

Atas ialah kandungan terperinci Apakah peraturan untuk membebankan fungsi dalam C++?. 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