¿Las referencias de "revinculación" en C ++ son legales?
¿Es legal lo siguiente en C ++?
Por lo que yo puedo decir,Reference
Tiene un destructor trivial, por lo que debe ser legal.
Pero pensé que las referencias no pueden recuperarse legalmente ... ¿pueden?
template<class T>
struct Reference
{
T &r;
Reference(T &r) : r(r) { }
};
int main()
{
int x = 5, y = 6;
Reference<int> r(x);
new (&r) Reference<int>(y);
}