在 C 中导航 C 头文件:std:: 与全局命名空间
在 C 中使用 C 头文件时,会出现一个关于调用函数的首选方法:使用 std:: 命名空间或全局命名空间。虽然 C 通过更改标头名称(例如,将 stdio.h 更改为 cstdio)来支持包含 C 标头,但仍然需要考虑哪种方法更合适。
C 11 标准在 D 节中解决了此问题.5 [depr.c.headers],声明每个 C 头文件(名称格式为 name.h)的行为就像相应的 cname 头文件声明的每个名称都放置在全局命名空间中一样。但是,这些名称是否首先在 std 命名空间中声明或定义,然后注入到全局命名空间中仍然未指定。
例如,
基于此信息,建议包含 cname 标头并使用 std 命名空间中的声明和定义。这确保了与未来修订版的兼容性,并遵循标准中概述的首选方法:
#include <cstdio> int main() { std::printf("Hello world\n"); }
虽然在技术上可以接受使用
以上是C : std:: 中的 C 头文件与全局命名空间 - 哪种方法更好?的详细内容。更多信息请关注PHP中文网其他相关文章!