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>
(since 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/w/cpp/ranges/stride_view/iterator/operator_at

Spec-Zone.ru

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