std::ranges::adjacent_view<V,N>:: iterator <Const>:: operator[]
From cppreference.net
<
cpp
|
ranges
|
adjacent view
|
iterator
C++
Ranges library
|
||||||||||||||||||||||
| Range primitives | |||||||
|
|||||||
| Range concepts | |||||||||||||||||||
|
|||||||||||||||||||
| Range factories | |||||||||
|
|||||||||
| Range adaptors | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||
| Helper items | |||||||||||||||||
|
|
||||||||||||||||
std::ranges::adjacent_view
| Member functions | ||||
|
(C++26)
|
||||
| Iterator | ||||
| Member functions | ||||
|
adjacent_view::
iterator
::operator[]
|
||||
| Non-member functions | ||||
| Sentinel | ||||
| Member functions | ||||
| Non-member functions | ||||
|
constexpr
auto
operator
[
]
(
difference_type n
)
const
requires ranges:: random_access_range < Base > ; |
(C++23 이후) | |
지정된 상대 위치의 요소를 반환합니다.
current_
를 기반 반복자 배열이라고 하자.
다음과 동일합니다:
return /*튜플-변환*/([&](auto& i) -> decltype(auto) { return i[n]; }, current_);
매개변수
| n | - | 현재 위치 기준 상대적 위치 |
반환값
현재 위치를 기준으로 변위 n 에 있는 요소입니다.
예제
이 코드 실행
#include <ranges> #include <tuple> int main() { constexpr static auto v = {0, 1, 2, 3, 4, 5}; // └──┬──┘ // └─────────────────┐ constexpr auto view = v | std::views::adjacent<3>; // │ // ┌───────────────────┬──────────────┘ // │ ┌──┴──┐ static_assert(view[2] == std::tuple{2, 3, 4}); }