Удаление указателя из вектора

Я ' m пытается стереть указатель на объект, но у меня все равно происходит сбой консоли (PS2), я не получаю никаких ошибок из-за способа настройки консоли, поэтому я не совсем уверен, что происходит.

Я перечислил две строки с ошибкой, это не было ошибкой, пока я не добавил эти строки.

    for(listIter = m_downDirectionList.begin(); listIter != m_downDirectionList.end(); listIter++)
    {
        Projectile* proj = dynamic_cast<Projectile*>(*listIter);

        if (proj->getZWorldCoord() >= (defaultLevelDepth + zOffset))
        {
            proj->getPoolOwner()->releaseAProjectile(proj);
            //(*listIter) = NULL; // THIS ERRORS, also tried = 0.
            //listIter = m_downDirectionList.erase(listIter); // THIS ALSO ERRORS
        }

        else
        {
            (*listIter)->update(camera, zOffset);
        }
    }

Что я делаю не так?

Спасибо.

РЕДАКТИРОВАТЬ: Уточнение, просто наличие этой строки.

listIter = m_downDirectionList.erase(listIter);

это тоже ошибка.

5
задан 29 November 2010 в 15:15
поделиться