今天在刷题时,遇到了下面的情况:
for (string& t : string_arr) {
string_arr.emplace_back(t + "hello");
t += "hello";
}
提交后报内存错误。这里出错的点在于string_arr
插入元素后发生扩容,此时的t
仍旧引用原来的位置,因此发生错误。正确的做法应该是直接通过下标进行引用。
今天在刷题时,遇到了下面的情况:
for (string& t : string_arr) {
string_arr.emplace_back(t + "hello");
t += "hello";
}
提交后报内存错误。这里出错的点在于string_arr
插入元素后发生扩容,此时的t
仍旧引用原来的位置,因此发生错误。正确的做法应该是直接通过下标进行引用。