что произойдет со ссылкой на объект после уничтожения и создания вместо этого объекта? Будет ли это все еще действительным или это поведение undefined? Вот пример:
#include <iostream>
class A
{
int var;
public:
A(int var) : var(var) {}
void foo()
{
std::cout << var;
}
};
A obj(5);
void main()
{
A& ref = obj;
obj.~A();
new (&obj) A(6);
ref.foo(); // is this valid?
}