摘要:
在 C++ 中,一般情况下,每个扩展名为“.h”的老的库文件,比如 “iostream.h”,在新标准的标准库中都有一个不带“.h”扩展名的库文件与之相对应。两者区别除了后者有很多改进之外,还有一点就是后者的很多东西都塞进了“std”命名空间中。 但唯独 string 特别。 问题在于 C++ 要兼容 C 的标准库,而 C 的标准库里碰巧也有一个名字叫“string.h”的库文件,包含一些常用的 C 字符串处理函数,比如 strcmp。这个库文件与 C++ 的 string 类半点关系也没,所以库文件 string 并非 string.h 的“升级版本”,它们是毫无关系的两个库文件: ... 阅读全文