Dalam C++, jenis fungsi berikut tidak boleh dibebankan: 1. Pembina dan pemusnah 2. Fungsi rakan; 4. Fungsi penukaran jenis paksa. Sebabnya ialah fungsi ini mempunyai peraturan semantik dan sintaks khas, dan beban berlebihan boleh menyebabkan kekaburan dan ralat.
Fungsi yang tidak boleh terlebih beban dalam C++
Dalam C++, jenis fungsi berikut tidak boleh terlebih beban:
1. Pembina dan pemusnah bertanggungjawab untuk 1. dan pemusnah bertanggungjawab untuk memusnahkan objek. Mereka mempunyai nama yang sama dengan kelas dan oleh itu tidak boleh dibebankan dengan fungsi lain.
2. Fungsi RakanFungsi rakan mempunyai hubungan istimewa dengan kelas dan boleh mengakses ahli kelas peribadi dan dilindungi. Mereka ditentukan dengan mengisytiharkan mereka sebagai rakan kelas dan oleh itu tidak boleh dibebankan dengan fungsi lain.
3. Fungsi operatorFungsi operator (seperti operator+()
dan operator*()
) digunakan untuk membebankan operator. Mereka mempunyai nama khas supaya mereka tidak boleh dibebankan dengan fungsi lain.
operator+()
和 operator*()
) 用于重载运算符。它们具有特殊名称,因此不能与其他函数重载。
4. 强制类型转换函数
强制类型转换函数(例如 operator int()
4. Fungsi penukaran jenis
Fungsi penukaran jenis (seperti operator int()
) digunakan untuk menukar objek kepada jenis lain. Mereka mempunyai nama khas supaya mereka tidak boleh dibebankan dengan fungsi lain.
Sebab
🎜🎜Sebab utama fungsi ini tidak boleh dibebankan adalah kerana ia mempunyai peraturan semantik dan sintaks khas. Lebih memuatkan versi fungsi yang berbeza boleh membawa kepada kekaburan dan ralat pengkompil. Sebagai contoh, jika pembina boleh terlebih beban, pengkompil tidak akan dapat menentukan pembina yang hendak digunakan untuk mencipta objek. 🎜Atas ialah kandungan terperinci Apakah fungsi yang tidak boleh dibebankan dalam C++. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!