很抱歉在SO上开始另一个无法回答的问题,但我只是好奇C ++中所有不同字符串类型的优缺点。我的特殊问题是在MFC的CStrings和std :: string之间(因为我只使用Windows软件),但这会延伸到C ++中的任何字符串格式。你在C ++中使用的最佳字符串类型是什么?为什么?
更新:我实际上发现了一个重复的问题。感谢那些已经回答的人。请指出对此问题的任何新回复:How do you handle strings in C++?
答案 0 :(得分:7)
在罗马时,像罗马人一样。如果您正在使用MFC,请使用CString,因为这些类都已针对它进行了优化。除此之外,使用std :: string,因为它是标准,你会发现在其他环境中有用的经验。
答案 1 :(得分:5)
的std :: string
答案 2 :(得分:3)
总结......
std :: string优点:
std :: string缺点:
CString优点:
CString缺点:
答案 3 :(得分:1)
答案 4 :(得分:0)
c ++字符串类型的大多数问题来自一个或另一个需要太大内存开销的字符串类型。也就是说,如果你必须从一种字符串类型转换为另一种字符串类型,它也会变得繁重。如果您正在构建一个大型应用程序,我建议您制定一个使用哪些字符串的策略。