Step 8 (S-7034)

From Stepik Wiki
Jump to: navigation, search

Step on Stepik: https://stepik.org/lesson/542/step/8

Step 8 (S-7034) 1.png

[00:00 - 00:17] выставки памяти возникает тогда когда когда не забываются противоположной ситуации когда с базовой памятью есть на ну давай посмотрим это например в 1 примере мы видим мир некорректно освобождение памяти


[00:17 - 00:34] указательным 1 указывает на память которая была выделена оператор new с квадратными скобками а удаляется при помощи оператора без квадратных скобок данный код ведет к неопределенному поведению и можешь назвать


[00:34 - 00:52] произвольное поведение во 2 примере мы видим совмещение развиваются в стиле c 4 c 5 + мы выделили некоторый int памяти при помощи оператора new


[00:52 - 01:08] после этого там собрались его при помощи функции free опять же данный код ведет к неопределенному поведению штандарте написано что это пример того не стоит делать не стоит смешивать


[01:08 - 01:25] 1 файле например управление памятью все и стереть это позволяет легко запутаться в 3 примере мы видим пример двойного удаления какую то понять выделить например при помощи функционал


[01:25 - 01:42] а дальше ее дарили дважды ну например у нас оказалось 2 указателя который указывает на данный массив и произошло сначала удаление


[01:42 - 01:59] во 2 раз предавали даже просто потому что данная память отмеченных как уже удаленно и 2 разу не сможешь а ну в 4 примере показываете как правильно поступать для на случай если


[01:59 - 02:16] после освобождения памяти обнулять указатель то проблема двойное ударение можно решить дело в том что стандарт обязывает функцию правильно работать если не передали нулевой указатель то есть если до передали в контакте


[02:16 - 02:29] просто завершать работу ничего не делаю аналогично и про операторы деления то есть если делит передать нулевой указатель то программа не пойдет работать нормально