std::unique_ptr<T,Deleter>::operator[]
T& operator[]( std::size_t i ) const; | (с C++11) (constexpr с C++23) |
operator[] предоставляет доступ к элементам массива, управляемого unique_ptr.
Параметр i должен быть меньше, чем количество элементов в массиве; в противном случае поведение не определено.
Этот член-функция предоставляется только для специализаций для типов массивов.
Параметры
| i | - | индекс возвращаемого элемента |
Возвращаемое значение
Возвращает элемент по индексу i, т.е. get()[i].
Пример
#include <iostream>
#include <memory>
int main()
{
const int size = 10;
std::unique_ptr<int[]> fact(new int[size]);
for (int i = 0; i < size; ++i)
fact[i] = (i == 0) ? 1 : i * fact[i - 1];
for (int i = 0; i < size; ++i)
std::cout << i << "! = " << fact[i] << '\n';
}Вывод:
0! = 1 1! = 1 2! = 2 3! = 6 4! = 24 5! = 120 6! = 720 7! = 5040 8! = 40320 9! = 362880
См. также
| возвращает указатель на управляемый объект (публичный член-функция) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/memory/unique_ptr/operator_at