常量对象的空间或曾属于常量对象的空间被其他对象占据
C++-Undefined-Behavior-22
示例:
struct T {
T();
~T();
};
const T obj;
void foo() {
obj.~T();
new (&obj) const T; // Undefined behavior
}
依据
ISO/IEC 14882:2003 3.8(9)-undefined
ISO/IEC 14882:2011 3.8(9)-undefined