Здравствуйте, Zigmar, Вы писали:
Z>Ты забыл добавить "В компиляторе A, версии B, с опциями C, на платформе D". Тогда только можно было бы говорить о верности такого предположения.
Если бы я был создателем компиляторов, то я бы сделал именно так как описал. Или я чегото недопонимаю, я чегото не учел?
Z>Т.е. ты предлагаешь вместо того, чтоб писать корректный код, полагаться на имлементацию UB в конкретном компиляторе. Отличное, решение, да.
Z>Кстати, ситуации, когда "не уверен как выделялся объект" — не должно быть в принципе.
Z>Ничего страшно, ну разве что упадёт разок другой или диск отформатирует... UB и в Африке UB.
Ну ты сам подумай, как вызов delete[] на корректной области памяти может вызвать крах приложения? Лично у меня фантазии не хватает.
CE>>Тем более, кто компилятор сам иногда оптимизирует код, превращая delete[] в delete когда надо.
Z>Хмм... А можно источник?
Я сам не уверен, но это вполне логично. Это не трудно проверить эксперементально если тебя так уж задевают лишние пара тактов процессора: скомпилируй приложение с оптимизацией и посмотри ассемблерный код под отладчиком, либо сгенерировав дамп во время компиляции.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>