首页  >  文章  >  后端开发  >  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