【发布时间】:2021-11-07 08:04:12
【问题描述】:
如何有效地合并两个字符串?我只知道用“+” - str3 = str1 + str2 的标准串联,但这种方式不节省内存,因为每次都会创建一个新字符串。
【问题讨论】:
-
最快的方法可能是使用
+=iirc+=调整字符串大小并在第一个末尾复制第二个。str1 += str2
标签: c++ string optimization memory concatenation
如何有效地合并两个字符串?我只知道用“+” - str3 = str1 + str2 的标准串联,但这种方式不节省内存,因为每次都会创建一个新字符串。
【问题讨论】:
+= iirc += 调整字符串大小并在第一个末尾复制第二个。 str1 += str2
标签: c++ string optimization memory concatenation
但如果你只需要合并2个字符串,只需append它们即可。
【讨论】:
+=
basic_string& operator+=(const basic_string& __str) { return this->append(__str); }