Это неопределенное поведение, так что может случиться что угодно.
То, что может случиться, плохо. Обычно бесплатный магазин представляет собой тщательно управляемую систему свободных и выделенных блоков, и new
и delete
ведут бухгалтерский учет, чтобы поддерживать все в согласованном состоянии. Если вы снова delete
, система, вероятно, будет вести ту же бухгалтерию с недействительными данными, и внезапно свободное хранилище окажется в несогласованном состоянии. Это известно как «повреждение кучи».
Как только это произойдет, все, что вы делаете с new
или delete
, может иметь непредсказуемые результаты, которые могут включать в себя попытку записи вне области памяти приложения, молчаливое повреждение данных, ошибочное мнение, что памяти больше нет, или двойное или наложение распределение. Если вам повезет, программа скоро рухнет, хотя у вас все еще будут проблемы с выяснением причин. Если вам не повезло, он продолжит работать с плохими результатами.