Добро пожаловать в блог официального сайта www.cplus-plus.ru

Все представленные материалы в этом блоге находятся по адрусу www.cplus-plus.ru 
Сайт разработан с целью удобного изучения объектно-ориентированного программирования языка C++. Сайт содержит: большое количество cред разработки, видеоуроков, исходников, учебников C++ как для начинающих, так и для продвинутых!

Поиск по этому блогу

Каталог статей

воскресенье, 17 октября 2010 г.

Операция new и delete

Операция new, выполненная на некоторым типом, резервирует место в свободной памяти (в кучке), необходимое для хранения значения этого типа. Результатом операции является адрес выделенной памяти или 0, если выделить память не удалось. Тип результата - "указатель на базовый тип”.
Замечание. Standart C++ выбрасывает исключение в случае невозможности выделить память. Исключения будут обсуждаться позже.

Пример. Выделение памяти для вещественного числа.

float* pf;

pf = new float;

// или

float* pf = new float;

После того, как свободная память выделена, ею можно пользоваться при помощи операции разыменования.

*pf = 3.14;

float f = *pf + 1.414;

Операция new не инициализирует выделенную память, т.е. не заполняет ее никакими значениями. Если нужна инициализация, ее надо выполнять явно.

float* pf = new float(0); // заполнение нулем

Когда надобность в выделенной памяти отпадает, ее надо освободить при помощи операции delete.

delete pf;

Источник: http://www.cplus-plus.ru

Комментариев нет:

Отправить комментарий

Объектно-ориентированное программирование на языке C++