std::ranges::view_interface<D>:: front
|
||||||||||||||||||||||
| Range primitives | |||||||
|
|||||||
| Range concepts | |||||||||||||||||||
|
|||||||||||||||||||
| Range factories | |||||||||
|
|||||||||
| Range adaptors | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||
| Helper items | |||||||||||||||||
|
|
||||||||||||||||
| Member functions | ||||
|
(C++23)
|
||||
|
(C++23)
|
||||
|
front
|
||||
|
constexpr
decltype
(
auto
)
front
(
)
requires ranges:: forward_range < D > ; |
(1) | (C++20 이후) |
|
constexpr
decltype
(
auto
)
front
(
)
const
requires ranges:: forward_range < const D > ; |
(2) | (C++20 이후) |
front()
멤버 함수의 기본 구현은 파생 타입의 뷰에서 첫 번째 요소를 반환합니다. 요소가 값으로 반환되는지 참조로 반환되는지는 반복자 타입의
operator
*
에 따라 결정됩니다.
derived
를
static_cast
<
D
&
>
(
*
this
)
로 설정합니다.
return
*
ranges::
begin
(
derived
)
;
와 동일합니다.
empty()
가
true
인 경우(즉, 시작 반복자가 센티널과 동일하게 비교되는 경우), 동일한 방식으로 얻은 반복자가 역참조 가능하더라도 동작은 정의되지 않습니다.
derived
가
static_cast
<
const
D
&
>
(
*
this
)
인 경우는 예외입니다.
목차 |
반환값
뷰의 첫 번째 요소입니다.
참고 사항
C++20에서, 표준 라이브러리 내
std::ranges::view_interface
에서 파생된 어떤 타입도 자체적인
front()
멤버 함수를 제공하지 않습니다. 이러한 타입들의 거의 모두가 기본 구현을 사용합니다.
주목할 만한 예외는
std::ranges::basic_istream_view
입니다. 이것은 절대
forward_range
를 만족하지 않기 때문에, 뷰는 상속된
front()
를 사용할 수 없습니다.
상속된
front()
멤버 함수는
std::ranges::empty_view
에서 사용 가능하지만, 이를 호출하면 항상 정의되지 않은 동작이 발생합니다.
예제
|
이 섹션은 불완전합니다
이유: 예제가 없음 |
참고 항목
|
(C++11)
(C++14)
|
컨테이너나 배열의 시작 부분을 가리키는 반복자를 반환합니다
(함수 템플릿) |
|
(C++20)
|
범위의 시작 부분을 가리키는 반복자를 반환합니다
(커스터마이제이션 포인트 객체) |
|
(C++20)
|
읽기 전용 범위의 시작 부분을 가리키는 반복자를 반환합니다
(커스터마이제이션 포인트 객체) |