Rumah > Artikel > pembangunan bahagian belakang > Mengapa Saya Tidak Boleh Majukan Mengisytiharkan Typedef dalam C?
Pengisytiharan Hadapan Typedef dalam C
Nampaknya intuitif bahawa pengisytiharan hadapan typedef boleh dilakukan, seperti halnya dengan sebuah kelas. Walau bagaimanapun, pengkompil tidak akan membenarkannya. Sebaliknya, adalah perlu untuk memajukan mengisytiharkan jenis yang dirujuk typedef.
Sebagai contoh, katakan kita mahu mencipta typedef untuk kelas yang dipanggil A:
typedef A B; // error: 'A' was not declared in this scope
Untuk membetulkannya , kita mesti memajukan dahulu mengisytiharkan kelas A:
class A; typedef A B; // valid
Ini membolehkan kami merujuk jenis B kemudian dalam kod kami, walaupun definisi penuh A masih belum diketahui.
Amalan Terbaik untuk Meminimumkan Pokok Kemasukan
Memandangkan kami tidak boleh memajukan pengisytiharan typedef, amalan terbaik untuk memastikan pokok kemasukan kecil adalah dengan memasukkan hanya pengepala yang diperlukan untuk unit kompilasi semasa. Ini boleh dicapai dengan menggunakan pengadang sertakan dan menguruskan kebergantungan dengan teliti antara pengepala.
Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Majukan Mengisytiharkan Typedef dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!