數(shù)據(jù)放在一個嵌套的vector里,我需要找到內(nèi)層vector的特定元素然后刪掉。但是我發(fā)現(xiàn)沒有真的刪掉,還是能訪問到。為什么呢 bool LayerDic::remove(CString IdCStr)
{
vector<vector<Data>>::iterator group2 = resDataGroup.begin();
while ((group2) != resDataGroup.end()) {
vector<Data>::iterator it = (*group2).begin();
while ((it) != (*group2).end()) {
if (it->getIdCStr().Compare(IdCStr) == 0)
{
(*group2).erase(it);
temp();//為了驗證是否真的刪除
return true;
}
}
}
return false;
}
void LayerDic::temp()
{
vector<vector<Data>>::iterator group2 = resDataGroup.begin();
while ((group2) != resDataGroup.end())
{
vector<Data>::iterator it = (*group2).begin();
while ((it) != (*group2).end()) {
CString cs = it->getIdCStr();
it++;
}
group2++;
}
}
- 2 回答
- 0 關(guān)注
- 1482 瀏覽
添加回答
舉報
0/150
提交
取消