У меня есть вектор указателей на объект (у меня есть они как указатели, потому что я буду сильно зависеть от позиций, и я бы предположил, что это будет намного быстрее просто замените указатель, вместо того, чтобы обмениваться вокруг всего объекта.Удаление вектора указателей против объекта в C++
В любом случае, в конечном итоге мне нужно будет удалить вектор, но объекты, на которые он указывает, по-прежнему должны быть действительными. Документация, похоже, говорит, что она вызовет деструктор для каждого объекта в векторе. Это имеет смысл, когда это массив объектов, но если массив представляет собой массив указателей на объекты, будут ли удалены объекты, на которые указывают указатели, или мне нужно их удалить
Если они удалены автоматически, это единственный способ сохранить объекты вокруг (например, они были использованы в другом векторе) - это фактически копировать объекты в другое место и указывать указатели в векторе на эти объекты (а не на объекты оригиналы)?
спасибо.
Здесь [связанный ответ] (http://stackoverflow.com/questions/4260464/does-stdlistremove-method-call-destructor-of-each-removed-element/4261074#4261074). – fredoverflow