std::experimental::ranges:: greater
|
헤더 파일에 정의됨
<experimental/ranges/functional>
|
||
|
template
<
class
T
=
void
>
requires StrictTotallyOrdered
<
T
>
||
|
(ranges TS) | |
|
template
<>
struct greater < void > ; |
(ranges TS) | |
비교 연산을 수행하는 함수 객체입니다. 기본 템플릿은
operator
<
를
T
타입의 const lvalue에 대해 인자 순서를 반전시켜 호출합니다.
greater<void>
특수화는 함수 호출 연산자의 매개변수 타입을 인자로부터 추론합니다(반환 타입은 제외).
greater
의 모든 특수화는
Semiregular
입니다.
목차 |
멤버 타입
| 멤버 타입 | 정의 |
is_transparent
(
greater<void>
특수화의 멤버에만 해당)
|
/* 지정되지 않음 */ |
멤버 함수
|
operator()
|
첫 번째 인수가 두 번째 인수보다
큰지
확인합니다
(public member function) |
std::experimental::ranges::greater:: operator()
|
constexpr
bool
operator
(
)
(
const
T
&
x,
const
T
&
y
)
const
;
|
(1) |
(기본
greater<T>
템플릿의 멤버 전용)
|
|
template
<
class
T,
class
U
>
requires StrictTotallyOrderedWith
<
T, U
>
||
|
(2) |
(
greater<void>
특수화의 멤버 전용)
|
t
와
u
를 비교합니다.
return
ranges::
less
<>
{
}
(
std::
forward
<
U
>
(
u
)
,
std::
forward
<
T
>
(
t
)
)
;
와 동일합니다.
참고 사항
std::greater
와 달리,
ranges::greater
는 여섯 가지 비교 연산자
<
,
<=
,
>
,
>=
,
==
및
!=
가 모두 유효해야 하며(
StrictTotallyOrdered
와
StrictTotallyOrderedWith
제약 조건을 통해),
ranges::less
를 기반으로 완전히 정의됩니다. 그러나 구현체는
operator
>
를 직접 사용할 수 있습니다. 왜냐하면 이러한 개념들은 비교 연산자들의 결과가 일관되도록 요구하기 때문입니다.
예제
|
이 섹션은 불완전합니다
이유: 예제가 없음 |
참고 항목
|
x
>
y
를 구현하는 함수 객체
(클래스 템플릿) |