std::ranges:: repeat_view<W, Bound>:: iterator
|
struct
/*iterator*/
;
|
( 설명 전용* ) | |
ranges::
repeat_view
<
W, Bound
>
::
iterator
는
begin()
과
end()
가 반환하는 반복자의 타입입니다. 이는
ranges::
repeat_view
<
W, Bound
>
의 멤버 함수입니다.
중첩 타입
설명 전용 타입 |
|
| 타입 | 정의 |
index-type
|
std::
conditional_t
<
std::
same_as
<
Bound,
std::
unreachable_sentinel_t
>
,
std::
ptrdiff_t
, Bound
>
( 설명 전용 멤버 타입* ) |
반복자 속성 타입 |
|
| 타입 | 정의 |
iterator_concept
|
std::random_access_iterator_tag |
iterator_category
|
std::random_access_iterator_tag |
value_type
|
W
|
difference_type
|
std::
conditional_t
<
is-signed-integer-like
<
index-type
>
,
index-type
,
iota-diff-t
<
index-type
>>
|
데이터 멤버
| 멤버 | 정의 |
const
W
*
value_
|
반복할 값에 대한 포인터
( 설명 전용 멤버 객체* ) |
index-type
current_
|
현재 위치
( 설명 전용 멤버 객체* ) |
멤버 함수
std::ranges::repeat_view:: iterator :: iterator
|
/*iterator*/
(
)
=
default
;
|
(1) | (since C++23) |
|
constexpr
explicit
/*iterator*/
( const W * value, /*index-type*/ b = /*index-type*/ ( ) ) ; |
(2) |
(since C++23)
( exposition only* ) |
반복자를 생성합니다. 오버로드
(2)
는
begin()
와
end()
에 의해
ranges::repeat_view
에서 호출됩니다.
std::ranges::repeat_view:: iterator :: operator*
|
constexpr
const
W
&
operator
*
(
)
const
noexcept
;
|
(C++23부터) | |
*
value_
을 반환합니다.
std::ranges::repeat_view:: iterator :: operator[]
|
constexpr
const
W
&
operator
[
]
(
difference_type n
)
const
noexcept
;
|
(C++23부터) | |
* ( * this + n ) 을 반환합니다.
std::ranges::repeat_view:: iterator :: operator++
|
constexpr
/*iterator*/
&
operator
++
(
)
;
|
(1) | (since C++23) |
|
constexpr
void
operator
++
(
int
)
;
|
(2) | (since C++23) |
current_
;
return
*
this
;
.
std::ranges::repeat_view:: iterator :: operator--
|
constexpr
/*iterator*/
&
operator
--
(
)
;
|
(1) | (C++23 이후) |
|
constexpr
/*iterator*/
operator
--
(
int
)
;
|
(2) | (C++23 이후) |
current_
;
return
*
this
;
.
std::ranges::repeat_view:: iterator :: operator+=
|
constexpr
/*iterator*/
&
operator
+
=
(
difference_type n
)
;
|
(C++23부터) | |
current_
+
=
n
;
return
*
this
;
와 동일합니다.
Bound
가
std::unreachable_sentinel_t
가 아니고
current_
+
n
이 음수인 경우, 동작은 정의되지 않습니다.
std::ranges::repeat_view:: iterator :: operator-=
|
constexpr
/*iterator*/
&
operator
-
=
(
difference_type n
)
;
|
(C++23부터) | |
다음 코드와 동등합니다:
current_
-
=
n
;
return
*
this
;
.
만약
Bound
가
std::unreachable_sentinel_t
가 아니고
current_
-
n
가 음수인 경우, 동작은 정의되지 않습니다.
비멤버 함수
operator==, <=> (std::ranges::repeat_view:: iterator )
|
friend
constexpr
bool
operator
==
( const /*iterator*/ & x, const /*iterator*/ & y ) ; |
(1) | (since C++23) |
|
friend
constexpr
auto
operator
<=>
( const /*iterator*/ & x, const /*iterator*/ & y ) ; |
(2) | (since C++23) |
!=
연산자는
operator==
로부터 합성됩니다
.
이 함수들은 일반적인
비한정 이름查找
또는
한정 이름查找
으로는 보이지 않으며,
iterator
가 인자들의 연관 클래스일 때만
인자 종속查找
에 의해 찾을 수 있습니다.
operator+ (std::ranges::repeat_view:: iterator )
|
friend
constexpr
/*iterator*/
operator
+
( /*iterator*/ i, difference_type n ) ; |
(1) | (C++23 이후) |
|
friend
constexpr
/*iterator*/
operator
+
( difference_type n, /*iterator*/ i ) ; |
(2) | (C++23 이후) |
i + = n ; return i ; 와 동등합니다.
이 함수들은 일반적인
비한정 이름 검색
이나
한정 이름 검색
으로는 보이지 않으며,
iterator
가 인자들의 연관 클래스일 때만
인자 종속 이름 검색
에 의해 찾을 수 있습니다.
operator- (std::ranges::repeat_view:: iterator )
|
friend
constexpr
/*iterator*/
operator
-
( /*iterator*/ i, difference_type n ) ; |
(1) | (since C++23) |
|
friend
constexpr
difference_type operator
-
( const /*iterator*/ & x, const /*iterator*/ & y ) ; |
(2) | (since C++23) |
difference_type
>
(
x.
current_
)
-
static_cast
<
difference_type
>
(
y.
current_
)
.
이 함수들은 일반적인
비한정 이름 검색
이나
한정 이름 검색
으로는 보이지 않으며,
iterator
가 인자들의 연관 클래스일 때만
인자 종속 이름 검색
에 의해 찾을 수 있습니다.
참고 사항
iterator
는 항상
random_access_iterator
입니다.