Spec-Zone.ru › C++

std::ranges::stride_view<V>::iterator<Const>::operator[]

constexpr decltype(auto) operator[]( difference_type n ) const
    requires ranges::random_access_range<Base>
(начиная с C++23)

Возвращает элемент в указанной относительной позиции.

Эквивалентно: return *(*this + n);.

Параметры

n - позиция относительно текущего положения

Возвращаемое значение

Элемент со смещением n относительно текущего положения.

Пример

#include <ranges>

int main()
{
    constexpr static auto v = {'a', 'b', 'c', 'd', 'e'};
    constexpr auto view{v | std::views::stride(2)};
    constexpr auto iter{view.begin() + 1};
    static_assert(*iter == 'c');
    static_assert(iter[0] == 'c');
    static_assert(iter[1] == 'e');
}

См. также

operator*
(C++23)
обращается к элементу
(открытая функция-член)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/ranges/stride_view/iterator/operator_at

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API