静态关键字的弃用:一个有趣的举动
在 C 中,static 关键字长期以来一直在翻译单元中使用来控制符号可见性。然而,在 n3092 中,不推荐使用它在命名空间范围内声明对象,这一决定在 n3225 中明显逆转。
更改的原因
标准核心语言缺陷报告和已接受的问题提供了对这种逆转的一些见解。在修订版 94 中,在“Undeprecating Static”问题下,委员会承认 static 关键字的弃用与其在 C 中持续的重要性不相符。
保留的理由
保留static关键字的首要原因是它的实用性和效率。与未命名的命名空间不同,静态声明允许创建具有内部链接的函数或对象,而不需要额外的样板代码。这种简单性在代码只需要内部可见性的情况下特别有价值。
兼容性的影响
static 关键字的弃用引起了对与 C 的兼容性的担忧,因为它允许将 C 程序编译为 C 。虽然有些人认为这种做法可能令人沮丧,但委员会认识到它仍然是该语言的有效使用。
结论
静态关键字弃用的逆转强调了这一点它持久的实用性以及它在 C 中具有独特用途的认识。它提供了一种方便的机制来声明具有内部链接的对象和函数,而无需与未命名名称空间相关的复杂性。
以上是为什么 C 在弃用 static 关键字后仍保留它?的详细内容。更多信息请关注PHP中文网其他相关文章!