Rumah >pembangunan bahagian belakang >C++ >Bila dan Mengapa Anda Memerlukan Kata Kunci 'nama taip' dalam Templat C?
Sintaks untuk Kata Kunci "typename"
Kata kunci "typename" digunakan dalam C apabila merujuk kepada nama bersarang yang merupakan nama bergantung , bermakna ia bersarang di dalam contoh templat dengan parameter yang tidak diketahui. Kata kunci ini secara eksplisit menyatakan bahawa nama itu mewakili jenis, terutamanya apabila entiti yang disimpulkan (nilai, jenis atau templat) adalah samar-samar.
Penggunaan "typename" dalam Nested Names
Pertimbangkan coretan kod berikut:
template<class K> class C { struct P {}; vector<P> vec; void f(); }; template<class K> void C<K>::f() { typename vector<P>::iterator p = vec.begin(); }
Di sini, kata kunci "typename" adalah perlu untuk mengisytiharkan p sebagai jenis, iaitu iterator untuk vektor struct P. Tanpa "nama taip", pengkompil akan mentafsirkan vektor jujukan
::iterator sebagai ungkapan yang mewakili nilai atau fungsi, yang akan menjadi salah.
Kes Tambahan Memerlukan "nama taip"
Selain daripada nama bersarang, kata kunci "typename" juga diperlukan dalam perkara berikut senario:
Atas ialah kandungan terperinci Bila dan Mengapa Anda Memerlukan Kata Kunci 'nama taip' dalam Templat C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!