Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Pembolehubah Sebaris C 17 Menyelesaikan Isu Pautan Luaran?
Memahami Pembolehubah Sebaris dalam C 17
Pada 2016, Jawatankuasa Piawaian C memperkenalkan pembolehubah sebaris sebagai sebahagian daripada piawaian C 17. Ciri ini membolehkan penciptaan pembolehubah pautan luaran yang boleh ditakrifkan dalam fail pengepala dan dirujuk merentas berbilang unit terjemahan tanpa mengalami ralat pemaut.
Cara Pembolehubah Sebaris Berfungsi
Penentu sebaris yang digunakan pada pembolehubah membenarkan pembolehubah itu mempunyai kaitan luaran, bermakna berbilang takrif pembolehubah dalam unit terjemahan yang berbeza dibenarkan. Apabila berbilang takrifan wujud, pemaut akan memilih salah satu daripadanya dan mengabaikan yang lain.
Mengisytiharkan, Mentakrifkan dan Menggunakan Pembolehubah Sebaris
Pembolehubah sebaris hendaklah diisytiharkan sebagai statik dan boleh ditakrifkan dalam definisi kelas atau skop ruang nama. Ia boleh dimulakan menggunakan pemula pendakap atau sama atau melalui pengisytiharan semula yang berasingan tanpa pemula jika ia diisytiharkan dengan penentu constexpr. Contohnya:
struct Kath { static inline std::string const hi = "Zzzzz..."; };
Kod ini mengisytiharkan pembolehubah sebaris statik bernama hi dalam struct Kath. Pembolehubah dimulakan dengan nilai "Zzzzz..." dan boleh diakses menggunakan Kath::hi daripada mana-mana unit terjemahan yang termasuk pengepala tempat ia ditakrifkan.
Faedah Pembolehubah Sebaris
Pembolehubah sebaris memberikan beberapa kelebihan:
Atas ialah kandungan terperinci Bagaimanakah Pembolehubah Sebaris C 17 Menyelesaikan Isu Pautan Luaran?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!