string result; result.reserve(1000); result += str_you; result += “said: ”; result += str_he; result += “ said: @#$% ”; result += str_i; result += “said: over!”; 假如只有一两个性能热点,我打赌,我会这样先尝试一下。我认为这是一个很好的开始,我们已经熟悉到导致瓶颈的原因并且试图消除它。你也可以这么做。 写这篇文章,当然意味着还有别的方法,而且和懒惰计算有关。因为我们不能修改basic_string::的operator+,因此,先把表达式变形: