Rumah >pembangunan bahagian belakang >C++ >Senarai Pemula Ahli lwn. Tugasan dalam Pembina C: Bilakah Saya Perlu Menggunakan Yang Mana?
Senarai Inisialisasi lwn. Tugasan dalam Pembina
Dalam C , terdapat dua pendekatan biasa untuk memulakan ahli kelas dalam pembina: menggunakan ahli senarai pemula atau memberikan nilai secara langsung dalam pembina. Walaupun berbeza dari segi sintaksis, terdapat perbezaan yang ketara dalam penjanaan kod dan senario penggunaan.
Senarai Pemula Ahli
Senarai pemula ahli ialah senarai permulaan ahli yang dipisahkan koma yang diletakkan dalam pembina selepas titik bertindih (:). Dalam contoh yang anda berikan:
MyClass::MyClass(): _capacity(15), _data(NULL), _len(0) { }
Ini memulakan tiga pembolehubah ahli _kapasiti, _data dan _len dengan nilai yang ditentukan. Sintaks ini lebih disukai untuk memulakan ahli tetap, rujukan dan pembina kelas asas.
Tugasan dalam Pembina
Dalam pendekatan alternatif, anda boleh menetapkan nilai kepada pembolehubah ahli dalam badan pembina:
MyClass::MyClass() { _capacity=15; _data=NULL; _len=0 }
Sintaks ini lebih biasa untuk memulakan bukan pemalar pembolehubah ahli.
Penjanaan dan Pengoptimuman Kod
Pengkompil biasanya menjana kod yang dioptimumkan untuk kedua-dua pendekatan. Dalam kebanyakan kes, kod pemasangan yang terhasil adalah sama. Walau bagaimanapun, dalam kes yang jarang berlaku, menggunakan senarai pemula ahli boleh menghasilkan kod yang lebih cekap apabila memulakan ahli tetap atau apabila menetapkan nilai lalai.
Senario Penggunaan
Seperti yang dinyatakan di atas , senarai pemula ahli diperlukan untuk memulakan ahli tetap, rujukan dan pembina kelas asas. Untuk pembolehubah ahli lain, pendekatan sama ada boleh diterima. Walau bagaimanapun, adalah dianggap sebagai amalan terbaik untuk menggunakan senarai pemula ahli untuk memulakan pembolehubah ahli yang mempunyai keperluan pembinaan atau permulaan yang bukan remeh.
Dalam kes khusus contoh anda, menggunakan senarai pemula ahli atau menetapkan nilai dalam pembina tidak membuat perbezaan praktikal.
Atas ialah kandungan terperinci Senarai Pemula Ahli lwn. Tugasan dalam Pembina C: Bilakah Saya Perlu Menggunakan Yang Mana?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!