Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Adakah kata kunci `statik` dalam C benar-benar tidak digunakan?

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

Susan Sarandon
Susan Sarandonasal
2024-11-13 07:01:01853semak imbas

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!

Kenyataan:
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