РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
654 of 815 menu

Оператор new[]

Оператор new[] выделяет память под массив объектов в динамической памяти (куче) и возвращает указатель на первый элемент этого массива. В качестве первого параметра оператор принимает тип данных, для которого нужно выделить память, а в квадратных скобках указывается количество элементов. В отличие от обычного new, оператор new[] используется для создания массива.

Синтаксис

type* pointer = new type[count];

Пример

Давайте выделим память под массив из 5 целых чисел и заполним его значениями:

#include <iostream> using namespace std; int main() { int* arr = new int[5]; for (int i = 0; i < 5; i++) { arr[i] = i + 1; } for (int i = 0; i < 5; i++) { cout << arr[i] << " "; } cout << endl; delete[] arr; return 0; }

Результат выполнения кода:

1 2 3 4 5

Пример

Давайте выделим память под массив из 3 строк и выведем их на экран:

#include <iostream> #include <string> using namespace std; int main() { string* arr = new string[3]; arr[0] = "abcde"; arr[1] = "12345"; arr[2] = "abcde"; for (int i = 0; i < 3; i++) { cout << arr[i] << endl; } delete[] arr; return 0; }

Результат выполнения кода:

"abcde" 12345 "abcde"

Пример

Давайте выделим память под массив из 4 чисел и инициализируем его значениями сразу при создании:

#include <iostream> using namespace std; int main() { int* arr = new int[4]{1, 2, 3, 4}; for (int i = 0; i < 4; i++) { cout << arr[i] << " "; } cout << endl; delete[] arr; return 0; }

Результат выполнения кода:

1 2 3 4

Смотрите также

  • оператор new,
    который выделяет память под один объект
  • оператор delete[],
    который освобождает память, выделенную под массив
  • оператор delete,
    который освобождает память, выделенную под один объект
  • оператор placement new,
    который создает объект в уже выделенной памяти
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить