Перейти к содержимому
Задача · Память и умные указатели · урок 11 из 12

Задача: владеющий буфер на unique_ptr

Напишите две функции. std::unique_ptr<int[]> make_filled(int n, int value) создаёт массив из n чисел, равных value, и возвращает владеющий им unique_ptr. int sum(const std::unique_ptr<int[]>& p, int n) возвращает сумму первых n чисел массива p.

  • make_filled(3, 7) → массив 7 7 7
  • sum(make_filled(3, 7), 3) → 21
  • массив 2 -3 10 1, n равно 3 → sum(p, n) возвращает 9

Ограничения: n от 1 до 1000 в make_filled и от 0 до длины массива в sum; при n = 0 сумма равна 0.

owning_buffer.cpp — cpp
cpp · строк: 10
Ctrl+Enter запуск · Esc выйти из редактора