Как удаление работает в C ++?
Как удаление работает в C ++?

Видео: Как удаление работает в C ++?

Видео: Как удаление работает в C ++?
Видео: Изменить размер массива. Удалить. Добавить элемент в массив. Увеличение массива. с++ Урок #59 2024, Май
Anonim

Когда удалить это используется для освобождения памяти для C ++ объект класса, деструктор объекта является вызывается перед памятью объекта является освобожден (если у объекта есть деструктор). Если операнд удалять оператор является изменяемое l-значение, его значение является undefined после объекта удален.

Также вопрос в том, в чем разница между удалением и удалением в C ++?

Оба используются для одной и той же цели, но все же у них есть различия , то различия находятся: удалять является оператором, а free () - библиотечной функцией. удалять освобождает выделенную память и вызывает деструктор. Но free () освобождает память, но не вызывает деструктор.

Также можно спросить, а как работает C ++ new? Когда новый используется для выделения памяти для C ++ объект класса, конструктор объекта вызывается после выделения памяти. При выделении массива с помощью новый оператора, первое измерение может быть нулевым - новый оператор возвращает уникальный указатель.

Также можно спросить, а в чем смысл операторов new и delete в C ++?

C ++ поддерживает динамическое размещение и освобождение объектов с помощью операторы new и delete . Эти операторы выделять память для объектов из пула, называемого свободным хранилищем. В новый оператор вызывает специальную функцию оператор новый , а оператор удаления вызывает специальную функцию оператор удалить.

Нужно ли удалять указатели C ++?

1 ответ. Ты не нужно удалить это, и, кроме того, не стоит удалять Это. Если земля является автоматическим объектом, она будет освобождена автоматически. Итак, вручную удаление а указатель к нему вы впадаете в неопределенное поведение.