Делает ли уничтожение и воссоздание объекта все указатели на этот объект недействительными?
Это продолжение кэтот вопрос, Предположим, у меня есть этот код:
class Class {
public virtual method()
{
this->~Class();
new( this ) Class();
}
};
Class* object = new Class();
object->method();
delete object;
которая является упрощенной версией того, чтоэтот ответ предлагает.
Теперь, когда деструктор вызывается изнутриmethod()
время жизни объекта заканчивается и указатель на переменнуюobject
в вызывающем коде становится недействительным. Затем новый объект создается в том же месте.
Делает ли это указатель на объект в вызове снова действительным?