我们每天都会遇到很多情况,我们必须在代码中进行繁琐且非常多的字符串操作。我们都知道字符串操作是昂贵的操作。我想知道可用版本中哪个最便宜。
最常见的操作是串联(这是我们可以在一定程度上控制的东西)。在 C++ 中连接 std::strings 的最佳方法是什么以及加速连接的各种解决方法?
我是说,
std::string l_czTempStr;
1).l_czTempStr = "Test data1" + "Test data2" + "Test data3";
2). l_czTempStr = "Test data1";
l_czTempStr += "Test data2";
l_czTempStr += "Test data3";
3). using << operator
4). using append()
另外,使用 CString 比使用 std::string 有什么好处吗?
原文由 Bhupesh Pant 发布,翻译遵循 CC BY-SA 4.0 许可协议
这是一个小型测试套件:
关于 大肠杆菌:
编译如下:
21.6463 毫秒
6.61773ms
6.7855ms
102.015 毫秒
看起来
2)
,+=
是赢家。(同时编译有无
-pthread
似乎会影响时间)