cf空白字直接粘贴复制 cf单字id生成器


关于C++标准库的标头信息

C++标准库的接口是由一系列的标头所定义的。对于那些以xxx.h形式存在的C标准库标头,C++标准库同时提供了同名的标头以及形式为cxxx的标头(所有有意义的cxxx标头均已在上文中列出)。以xxx.h形式存在的标头主要是为了实现互操作性。在C++源文件中,可能需要包含这些标头之一以确保符合ISO C标准。

除了complex.h这一特例之外,C++标准库中包含的每一个xxx.h标头都将它们对应的cxxx中本应位于std命名空间中的名称放在了全局命名空间中。这样做是为了更好地兼容和适应不同编程需求。

需要注意的是,某些xxx.h标头在C++98中被弃用,但又在C++23中被重新启用。尽管如此,对于纯粹的C++代码,我们并不推荐使用这些被弃用的标头,但它们并不会在将来的版本中被移除。

还有一些特殊的标头,如、、和等,它们并不包含来自C标准库的内容。它们更多地是作为C++标准库中其他标头的包含关系存在。

另外一些标头,如、和等,在C++中并无实际意义。因为它们在C中提供的宏已经是C++的关键词。

值得注意的是,C++并不包含某些C标头,如(在C++23之前)、和等。这些标头没有对应的c等价版本。

除此之外,C++的技术报告(TR)和提案(TS)也定义了多个标头的集合,为开发者提供了更多的选择和可能性。