" Sangat Perlu dalam C ? " />" Sangat Perlu dalam C ? " />
Bila Menggunakan "this->" dalam C
Walaupun bertahun-tahun pengalaman pengaturcaraan C, penggunaan "this->" sering menimbulkan soalan. Walaupun kod menggunakan "ini->" mungkin berfungsi dengan betul tanpanya, senario tertentu menjamin penggunaannya: hierarki kelas templat.
Pertimbangkan contoh berikut:
<code class="cpp">template<typename T> class A { protected: T x; }; template<typename T> class B : A<T> { public: T get() { return this->x; } };</code>
Dalam templat hierarki kelas, "this->" adalah perlu untuk menyatakan secara jelas bahawa "x" ialah ahli warisan kelas, terutamanya dengan warisan templat Tanpa "this->", pengkompil mungkin menghadapi kesamaran semasa pencarian nama.
Selain Senario dengan Templat
Dalam hierarki kelas bukan templat dan konteks lain, menggunakan "ini->" untuk mengakses fungsi atau pembolehubah ahli secara amnya tidak perlu dan boleh ditinggalkan tanpa sebarang kesan kefungsian atau sampingan.
Kesimpulan
Walaupun "ini->" secara amnya tidak diperlukan, penggunaannya adalah penting dalam hierarki kelas templat untuk menyelesaikan kekaburan semasa pencarian nama. Untuk semua senario lain, menggunakan "ini->" adalah pilihan dan tidak menjejaskan fungsi kod dalam kebanyakan kes.
Atas ialah kandungan terperinci Bilakah Penggunaan 'ini->' Sangat Diperlukan dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!