Mengapa Pembina Kekal Tidak Dipanggil?
Dalam kod C yang disediakan, kelas yang dipanggil Kelas ditakrifkan dengan pembina lalai dan pemusnah yang mencetak mesej semasa penciptaan objek dan pemusnahan, masing-masing. Walau bagaimanapun, apabila cuba mencipta contoh kelas ini, tiada panggilan pembina muncul dalam fungsi utama. Sebaliknya, pengisytiharan fungsi diisytiharkan secara tidak sengaja.
Untuk membetulkan isu ini dan memastikan penyeruan yang betul bagi pembina lalai, objek Kelas baris(); dalam fungsi utama hendaklah diubah suai kepada objek Kelas;. Perubahan ini mengisytiharkan objek jenis Kelas dengan betul dan mencetuskan pelaksanaan pembina lalainya.
Selain itu, isu ini menunjukkan kemungkinan perangkap yang dikenali sebagai "penghuraian paling menjengkelkan" dalam C . Dalam kes ini, penghurai tersilap mentafsir objek Kelas pengisytiharan(); sebagai pengisytiharan fungsi dan bukannya pengisytiharan objek. Untuk mengelakkan ini, koma bertitik yang muncul selepas pengisytiharan objek harus dihapuskan.
Atas ialah kandungan terperinci Mengapa Pembina C Saya Tidak Dipanggil?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!