Указатель unique_ptr на массив в C++
Массив под единоличным указателем записывают как unique_ptr на массив: форма
std::unique_ptr<T[]>: удаление
идет через delete[] автоматически.
Фабрика make_unique принимает форму
make_unique<T[]>(n) для длины
n. Элементы доступны через индекс,
как у обычного массива. Запишем три ячейки
и выведем среднее:
#include <iostream>
#include <memory>
std::unique_ptr<int[]> row = std::make_unique<int[]>(3);
row[0] = 2;
row[1] = 4;
row[2] = 6;
std::cout << (row[0] + row[1] + row[2]) / 3 << "\n";
Выделите std::unique_ptr<int[]>
длиной 4 через make_unique.
Заполните индексы 0..3
числами 1, 2, 3, 4
и выведите сумму всех элементов.
Создайте массив из 5 целых через
make_unique<int[]>. Запишите
в последний индекс 99 и выведите
его значение.