返回介绍

B.4 有特殊含义的标识符

发布于 2024-10-08 23:14:15 字数 717 浏览 0 评论 0 收藏 0

C++社区讨厌新增关键字,因为它们可能与现有代码发生冲突。这就是标准委员会改变关键字 auto 的用法,并赋予其他关键字(如 virtual 和 delete)新用法的原因所在。C++11 提供了另一种避免新增关键字的机制,即使用具有特殊含义的标识符。这些标识符不是关键字,但用于实现语言功能。编译器根据上下文来判断它们是常规标识符还是用于实现语言功能:

在上述代码中,语句#1 中的 final 是一个常规标识符,而语句#2 中的 final 使用了一种语言功能。这两种用法彼此不会冲突。

另外,C++还有很多经常出现在程序中,但不被保留的标识符。这包括头文件名、库函数名和 main(必不可少的函数的名称,程序从该函数开始执行)。只要不发生名称空间冲突,就可将这些标识符用于其他目的,但没有理由这样做。也就是说,完全可以编写下面的代码,但常识告诉您不应这样做:

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文