Почему memcpy не гарантированно безопасен для не POD-типов?

Я прочитал об этом абзаце из нескольких вопросов, размещенных на SO.

Я не могу понять, почемуmemcpy не гарантируется безопасность для не POD типа. Я понимаю, чтоmemcpy это просто побитовая копия.

Ниже цитата из стандарта

Для любого объекта (кроме подобъекта базового класса)POD типT, содержит ли объект допустимое значение типаTнижележащие байты (1.7), составляющие объект, могут быть скопированы в массивchar или жеunsigned char.41) Если содержимое массиваchar или жеunsigned char копируется обратно в объект, объект должен впоследствии сохранить свое первоначальное значение.

# define N sizeof (T)
char buf[N];
T obj ; // obj initialized to its original value
std :: memcpy (buf , & obj , N); // between these two calls to std::memcpy,
                                 // obj might be modified
std :: memcpy (& obj , buf , N); // at this point, each subobject of obj of 
                                 // scalar type holds its original value

Ответы на вопрос(5)

Ваш ответ на вопрос