Namespaces
Variants

std::experimental::ranges:: prev

From cppreference.net
헤더 파일에 정의됨 <experimental/ranges/iterator>
namespace {

constexpr /* unspecified */ prev = /* unspecified */ ;

}
(ranges TS)
(customization point object)
호출 시그니처
template < Iterator I >
constexpr I prev ( I i ) ;
(1)
template < Iterator I >
constexpr I prev ( I i, ranges :: difference_type_t < I > n ) ;
(2)
template < Iterator I >
constexpr I prev ( I i, ranges :: difference_type_t < I > n, I bound ) ;
(3)

반복자를 i n 번 감소시키거나, bound 에 도달할 때까지 감소시킨 후(둘 중 먼저 도달하는 조건 적용), 감소된 반복자를 반환합니다.

1) 다음 코드와 동등함: -- i ; return i ; .
2) ranges:: advance ( i, - n ) ; return i ; 와 동등합니다.
3) 다음에 해당함 ranges:: advance ( i, - n, bound ) ; return i ; .

목차

커스터마이제이션 포인트 객체

이름 ranges::prev 사용자 정의 지점 객체 를 나타내며, 이는 함수 객체 로서 리터럴 Semiregular 클래스 유형(설명 목적으로 PrevT 로 표기됨)입니다. PrevT 의 모든 인스턴스는 동일합니다. 따라서 ranges::prev 는 자유롭게 복사할 수 있으며 그 복사본들은 상호 교환적으로 사용될 수 있습니다.

주어진 타입 집합 Args... 에 대해, std:: declval < Args > ( ) ... 가 위의 ranges::prev 에 대한 인수 요구사항을 만족한다면, PrevT ranges :: Invocable < const PrevT, Args... > 를 만족합니다. 그렇지 않으면, PrevT 의 함수 호출 연산자 중 어느 것도 오버로드 해결에 참여하지 않습니다.

ranges::prev 가 정의된 모든 번역 단위에서, 이는 동일한 사용자 정의 지점 객체의 인스턴스를 참조합니다. (이는 인라인 함수나 함수 템플릿과 같은 곳에서 일 정의 규칙 을 위반하지 않고 자유롭게 사용될 수 있음을 의미합니다.)

반환값

감소된 반복자.

예제

참고 항목

(C++11)
반복자를 감소시킴
(함수 템플릿)
주어진 거리만큼 반복자를 전진시킴
(함수 템플릿)
반복자를 증가시킴
(함수 템플릿)
반복자와 센티넬 사이의 거리, 또는 범위의 시작과 끝 사이의 거리를 반환함
(함수 템플릿)