Mengapa Gunakan "= lalai" dalam C 11 Pembina Lalai?
Sintaks pembina lalai tradisional dalam C melibatkan hanya mentakrifkan fungsi pembina kosong:
Walau bagaimanapun, C 11 memperkenalkan sintaks "= lalai", yang menyediakan beberapa faedah:
-
Penetapan Eksplisit ODR-Penggunaan: Pembina lalai yang lalai secara eksplisit ditakrifkan secara khusus oleh standard sebagai sama dengan pembina lalai yang ditentukan pengguna tanpa senarai permulaan dan pernyataan kompaun kosong. Ini memastikan gelagat yang konsisten merentas kes penggunaan yang berbeza.
-
Sifat Jenis Agregat dan Trivial: Walaupun pembina kosong tradisional mengekalkan sifat jenis agregat dan remeh, pembina lalai yang diisytiharkan, walaupun yang kosong, tidak bukan. Menggunakan "= lalai" secara eksplisit mengalih keluar sifat ini jika dikehendaki.
-
Sifat Padanan Pembina Tersirat: Sintaks "= lalai" memastikan bahawa ditakrifkan secara eksplisit pembina lalai sepadan dengan sifat pembina tersirat, termasuk spesifikasi constexpr dan pengecualian. Ini meningkatkan kebolehbacaan kod.
-
Sintaks Seragam: Sintaks "= lalai" menyediakan kaedah seragam untuk mentakrifkan fungsi ahli khas seperti pembina salin/pindah dan pemusnah, menjadikan kod lebih konsisten dan lebih mudah untuk faham.
Atas ialah kandungan terperinci Mengapa Gunakan `= lalai` untuk Pembina Lalai dalam C 11?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!