Adakah kata kunci `statik` dalam C benar-benar tidak digunakan?

Susan Sarandon
Lepaskan: 2024-11-13 07:01:01
asal
856 orang telah melayarinya

Is the `static` keyword in C   truly deprecated?

Kata Kunci Statik dalam C : Tidak Ditamatkan Lagi

Dalam evolusi standard C, penggunaan kata kunci statik dalam terjemahan unit mengalami perubahan yang ketara. Pada mulanya ditamatkan dalam n3092 dan kemudian dialih keluar pada n3225, penggunaan statik untuk mengisytiharkan objek dalam skop ruang nama mencetuskan kekeliruan dan perdebatan.

Rasional untuk Penyingkiran

Sebab utama untuk penamatan awal ialah pengenalan ruang nama yang tidak dinamakan, yang menyediakan cara yang lebih bersih dan lebih jelas mengisytiharkan objek dengan kaitan dalaman. Ruang nama yang tidak dinamakan menawarkan beberapa kelebihan, termasuk pengurusan pembolehubah global yang lebih mudah dan mengelakkan kemungkinan perlanggaran nama.

Pembalikan Penamatan

Walau bagaimanapun, dalam semakan kemudian bagi Piawaian C Laporan Kecacatan Bahasa Teras dan Isu yang Diterima (semakan 94), nombor keluaran 1012 bertajuk "Menyalahkan statik" menangani ketidakpraktisan mengalih keluar sokongan sepenuhnya untuk kata kunci statik.

Status Semasa

Walaupun penamatannya, statik kekal sebagai binaan yang sah dan berguna dalam C . Ia menyediakan kaedah yang ringkas dan cekap untuk mengisytiharkan objek dengan pautan dalaman, terutamanya dalam kes di mana penggunaan ruang nama yang tidak dinamakan akan mengakibatkan kod plat dandang yang tidak diperlukan.

Bila Menggunakan Statik

Pilihan antara ruang nama statik dan tidak dinamakan bergantung pada keperluan khusus kod. Statik masih disyorkan untuk mengisytiharkan fungsi atau objek dengan pautan dalaman apabila kerumitan tambahan ruang nama yang tidak dinamakan tidak dibenarkan.

Atas ialah kandungan terperinci Adakah kata kunci `statik` dalam C benar-benar tidak digunakan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan