На основе этого вопроса .
Предположим, в коде C ++ у меня есть действительный указатель и правильно удалить
его. Согласно стандарту C ++, указатель станет недействительным (3.7.3.2/4 - функция освобождения сделает недействительными все указатели, относящиеся ко всем частям освобожденного хранилища ) .
По крайней мере, в большинстве реализаций он сохраняет значение и будет хранить тот же адрес, что и до delete
, однако использование значения является неопределенным поведением .
Гарантирует ли стандарт, что указатель сохранит свое значение, или значение может изменяться?