首頁  >  文章  >  後端開發  >  C 中的「static」關鍵字真的被棄用了嗎?

C 中的「static」關鍵字真的被棄用了嗎?

Susan Sarandon
Susan Sarandon原創
2024-11-13 07:01:01856瀏覽

Is the `static` keyword in C   truly deprecated?

C 中的Static 關鍵字:不再棄用

在C 標準的演變中,翻譯中static 關鍵字的使用單位發生重大變化。使用 static 在命名空間範圍內聲明物件最初在 n3092 中被棄用,後來在 n3225 中刪除,引發了混亂和爭論。

刪除的理由

主要原因最初的棄用是引入未命名的名稱空間,它提供了一種更清晰、更明確的方式來聲明具有內部連結的對象。未命名命名空間具有多種優點,包括更輕鬆地管理全域變數和避免潛在的名稱衝突。

棄用的逆轉

但是,在C 標準的後續修訂版中核心語言缺陷報告和已接受的問題(修訂版94),第1012 期,標題為“Undeprecating static”,解決了完全刪除對static 關鍵字的支援的不切實際問題。

當前狀態

儘管 static 已被棄用,但它仍然是 C 中有效且有用的構造。它提供了一種簡潔有效的方法來聲明具有內部連結的對象,特別是在使用未命名命名空間會導致不必要的樣板程式碼的情況下。

何時使用靜態

靜態命名空間和無名命名空間的選擇取決於程式碼的特定要求。當未保證未命名命名空間增加的複雜性時,仍建議使用靜態來聲明具有內部連結的函數或物件。

以上是C 中的「static」關鍵字真的被棄用了嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn