Что такое delete в C++?
Оператор delete используется для освобождения памяти, ранее выделенной с использованием оператора new. Правильное использование delete важно для предотвращения утечек памяти и некорректной работы программы.
Основные моменты:
- Использование после
new:deleteприменяется к указателям, полученным из оператораnew. Это обеспечивает правильное освобождение памяти. delete[]для массивов: Если память была выделена для массива с использованиемnew[], следует использоватьdelete[]для ее корректного освобождения.- Осторожность с двойным
delete: Двойное освобождение памяти (deleteдважды для одного указателя) приведет к неопределенному поведению программы.
int main() {
// Выделение памяти для одного целого числа
int* singleNumber = new int(42);
// Освобождение памяти после использования
delete singleNumber;
// Выделение памяти для массива целых чисел
int* numberArray = new int[5]{1, 2, 3, 4, 5};
// Использование выделенной памяти (пример)
for (int i = 0; i < 5; ++i) {
std::cout << "Элемент " << i << ": " << numberArray[i] << std::endl;
}
// Освобождение памяти после использования массива
delete[] numberArray;
return 0;
}
Комментарии