0
返回一個迭代我試圖在參考參考
void class::foo(vector<bar>::iterator& iterBar)
{
vector<bar> copy = GetVecBar();
iterBar = min_element(copy.begin(), copy.end(), [](const bar& a, const bar& b) { return a.GetInt() < b.GetInt(); });
}
這工作,但,當它返回到主,迭代器指向的東西隨機返回一個迭代。
在主:
vector<bar>::iterator iterBar;
Object.foo(false, iterBar);
感謝您的幫助
'iterBar'只是垂下;它指向容器'copy'中的元素,它在離開函數'foo'時被銷燬。 – songyuanyao