我的矢量如下:
vector<Curve> workingSet;
课程设置是一门“名称”和一系列结构,由建筑商积极分配。
我有一条从病媒中删除2件(4件)物品的通道。
vector<Curve>::iterator it = workingSet.begin();
//remove tbi s children from the working set
for ( ; it != workingSet.end();){
if (it->thisName == tbi.childAName ||it->thisName == tbi.childBName)
it= workingSet.erase(it);
else
++it;
}
当浮标达到“(it)”时,我可以看到,蒸发器在病媒中找到了2个曲线。 这样做是好的;我希望将治疗2从病媒中删除。
然后,被挖尸官带走(我在那里有一个断点),这大概应该破坏曲线2。 但是,当我看看看这 watch时,我可以看到,正在摧毁的曲线是四点。 其后,仲裁员按照要求着手删除物体中的阵列,并给民族解放军确定阵列点。
当该方案完成时,我可以看到,病媒2已经从阵列中去除,治疗4仍然在那里。 4个阵列点仍与以前一样位于同一地点,但记忆被分配,阵列有垃圾。
谁能说明为什么将治疗4放在我身上?
N.b. (1) There is a copy constructor for the curve class, which does a deep copy. N.b. (2) There is more to the class/program than I ve mentioned here
Btw,曲线2和4中的阵列点指不同地点,并含有不同的价值,据夸张。
Edit:我现在执行复印任务。 现在正确的项目似乎从病媒中消失,但错误的 des子仍然被称作! 然而,当四阵列曲线被夸大回时,仍然无动于衷。