返回介绍

B.3 C++库保留名称

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

编译器不允许程序员将关键字和替代标记用作名称。还有另一类禁止使用(但并非绝对不能用)的名称—保留名称,它们是保留给 C++库使用的名称。如果您将这种名称用作标识符,后果将是不确定的。也就是说,可能导致编译器错误、警告、程序不能正确运行或根本不会导致任何问题。

C++语言保留了库头文件中使用的宏名。如果程序包含某个头文件,则不应将该头文件(以及该头文件包含的头文件,依此类推)中定义的宏名用作其他目的。例如,如果您直接或间接地包含了头文件<climits>,则不应将 CHAR_BIT 用作标识符,因为它已被用作该头文件中一个宏的名称。

C++语言保留了以两个下划线或下划线和大写字母打头的名称,还将以单个下划线打头的名称保留用作全局变量。因此,程序员不能在全局名称空间使用诸如 gink、 Lynx 和_lynx 等名称。

C++语言保留了在库头文件中被声明为链接性为外部的名称。对于函数,这包括函数的特征标(名称和参数列表)。例如,假设有如下代码:

则函数特征标 tan(double)被保留。这意味着您的程序不应声明一个原型如下所示的函数:

该原型确实与库函数 tan( ) 的原型不同,因为后者的返回类型为 double,但特征标部分确实相同。然而,定义下面的原型是可以的:

这是因为虽然其名称与库函数 tan( ) 相同,但特征标不同。

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

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

发布评论

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