函数从传递指针的向量中删除对象

时间:2019-10-05 13:28:08

标签: c++11

我有两个向量。一个是(1)向量,其中包含im正在使用的所有对象并与其一起工作。另一个向量是(2)向量,该向量在函数之后将(1)中的对象添加到(2)中。一旦发生这种情况,我想从(1)中删除对象。问题是我要删除的函数需要一个对象* obj。实际对象仍然具有指向它的指针,我不想完全擦除obj,只需将其从(1)中删除即可。任何帮助将不胜感激。

`

void removeObject(const Object * obj) {
        int index;
        for (int i = 0; i < size(); i++) {
            if (obj == & objectVector[i] ) {
                index = i;
            }
        }
        objectVector.erase(objectVector.begin() + index);
    }

`

我肯定这是问题所在,因为当我不使用此功能注释掉该行时,会出现sigtrap错误

0 个答案:

没有答案
相关问题