Rumah >pembangunan bahagian belakang >C++ >Adakah C Menyediakan Pembina Lalai Tersirat?
Pembina Lalai Tersirat dalam C
Bertentangan dengan tuntutan dalam buku yang dipetik, C sememangnya menyediakan pembina lalai tersirat jika anda' t mentakrifkan satu secara eksplisit. Pembina ini memulakan ahli data kepada nilai sifar.
Pelaksanaan Pembina Lalai
Pembina lalai untuk kelas dilaksanakan secara tersirat seperti berikut:
Kepentingan Permulaan Ahli
Jika pembolehubah ahli tidak mempunyai pembina lalai, penyusunan akan gagal. Walau bagaimanapun, jenis data terbina dalam seperti integer, apungan dan penuding mempunyai pembina lalai tersirat yang tidak melakukan permulaan.
Operasi Salin dan Alih
Jika anda tidak melakukannya mentakrifkan pemusnah, salin/pindah pembina secara eksplisit, atau salin/pindah pengendali tugasan, pengkompil akan menjananya untuk anda. Pelaksanaan lalainya melibatkan:
Pemusnah:
Pembina Salin:
Salin Operator Tugasan:
Move Constructor:
Pindahkan Operator Tugasan:
Nota: Pelaksanaan lalai ini memastikan objek dimulakan dan dimusnahkan dengan betul, memastikan keselamatan memori. Walau bagaimanapun, mereka mungkin tidak selalu melakukan pemulaan yang diingini, jadi amalan terbaik untuk mentakrifkan pembina dan pemusnah secara eksplisit apabila sesuai.
Atas ialah kandungan terperinci Adakah C Menyediakan Pembina Lalai Tersirat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!