以下表達式是否創建另一個std :: string,然後將其添加到s1?「std :: string + char」表達式是否創建另一個std :: string?
std::string s1 = "abc", s2 = "xyz";
s1 += s2 + 'b';
它應該防止這種情況(他們會被添加到s1沒有額外的工作)?
std::string s1 = "abc", s2 = "xyz";
s1 += s2;
s1 += 'b';
這些規則是否也適用於「std :: string + std :: string」表達式?
您的問題標題與問題詳細信息不符。 – Brian
這些速度同樣快。沒有不同。 –
「修復」是什麼?問題是什麼?另外,stack/heap在這裏誤導/錯誤/無關,特別是因爲'std :: string'動態分配它的緩衝區。 –