Colocación nueva y asignación de clase con miembro constante
¿Por qué es ese comportamiento indefinido?
struct s
{
const int id; // <-- const member
s(int id):
id(id)
{}
s& operator =(const s& m) {
return *new(this) s(m); // <-- undefined behavior?
}
};
(Cita del estándar sería bueno).
Esta pregunta surgió deesta respuesta.