gpt4 book ai didi

c++ - 这等同于 std::string 吗?

转载 作者:行者123 更新时间:2023-11-30 02:08:32 25 4
gpt4 key购买 nike

尝试在具有多个 std::string const & 参数的函数上追踪 LNK2019 未解析的外部符号错误。

this answer 的第一步说要检查修饰过的/未修饰过的名字,这就是我在参数列表的链接器错误文本中看到的:

class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &

这也是 std::string const & 吗?

感谢您的帮助。

我正在运行 VS 2008。

最佳答案

是的。

作为 C++ 标准化的一部分,std::string类变得更加与 STL 兼容。与 STL 容器一样,可以选择元素类型。常见的选择是 charwchar_t , 但 Visual C++ 用户也可以使用 TCHAR .与 STL 容器一样,内存分配由分配器处理。

然而,字符串与其他容器不同,因为一些方法需要对其元素执行更复杂的操作。 std::set<T>只需要比较两个 T对象,但是 std::string需要处理多字节编码和此类复杂情况。这些细节包含在类 std::char_traits<char> 中.

因此,由于所有这些复杂性,您最终会得到 std::basic_string<char, std::char_traits<char>, std::allocator<char> > .这当然不是很友好,大多数人只需要默认值。 std::string是它的友好名称。

关于c++ - 这等同于 std::string 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6688112/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com