在 C++ 程序中包含前者而不是后者的考虑因素是什么?我总是包括math.h
,stdlib.h
从不cmath
等cstdlib
。我不明白后者甚至存在的原因,有人可以赐教吗?
问问题
41327 次
1 回答
22
更喜欢包含<c ...>
标题。它们是 C++ 标准库头文件。<... .h>
头文件是由 C 标准库定义的头文件:
C++ 标准库还提供了 C 标准库的功能,经过适当调整以确保静态类型安全。
C++ 头文件的大部分内容与相应的 C 库头文件相同,只是名称都在std
命名空间中定义。
除了第 18 到 30 条和附录 D 中的说明外,每个标题的内容
cname
应与相应标题的内容相同name.h
,如 C 标准库 (1.2) 或 C Unicode TR 中规定的,视情况而定,如同通过包容。然而,在 C++ 标准库中,声明(在 C 中定义为宏的名称除外)在命名空间 std 的命名空间范围 (3.3.6) 内。未指定这些名称是否首先在全局命名空间范围内声明,然后通过显式使用声明注入命名空间 std
于 2013-03-27T10:19:58.953 回答