std::string和std::_c++11::string
时间: 2023-12-13 10:33:51 浏览: 217
C++ STL std::string详细讲解
5星 · 资源好评率100%
在C++03中,基础字符串的定义是:std::basic_string<char>。而在C++11中,基础字符串变成了:std::__cxx11::basic_string<char>(libstdc++)或者std::__1::basic_string<char>(libc++)。这是因为C++11引入了一些新的特性,例如右值引用和移动语义,这些特性需要对标准库进行修改。因此,在C++11中,为了避免与旧版本的代码发生冲突,标准库的名称被修改了。如果你使用的是旧版本的编译器,那么你只能使用std::basic_string<char>。如果你使用的是新版本的编译器,那么你可以使用std::__cxx11::basic_string<char>(libstdc++)或者std::__1::basic_string<char>(libc++)。
阅读全文