一般一个C++的老的带“.h”扩展名的库文件,比如iostream.h。在新标准后的标准库中都有一个不带“.h”扩展名的相对应。
区别除了后者的好多改进之外,还有一点就是后者的东东都塞进了“std”名字空间中。
但唯独string特别:
C的标准库里碰巧也已经有一个名字叫做“string.h”的头文件,包含一些常用的C字符串处理函数,比如strcmp。
头文件“string.h”跟C++的string类半点关系也没有,所以<string>并非<string.h>的“升级版本”,他们是毫无关系的两个头文件。
本文介绍了C++标准库中的string类与C语言标准库中的string.h之间的区别。指出两者虽然名称相似,但实际上各自独立,分别适用于C++和C语言的不同场景。string类位于std命名空间中,而string.h则提供了一系列C风格字符串操作。

被折叠的 条评论
为什么被折叠?



