Namespaces
Variants

std:: predicate

From cppreference.net
헤더 파일에 정의됨 <concepts>
template < class F, class ... Args >

concept predicate =
std:: regular_invocable < F, Args... > &&

boolean-testable < std:: invoke_result_t < F, Args... >> ;
(C++20부터)

개념 std :: predicate < F, Args... > F Args... 에 의해 인코딩된 타입과 값 범주를 갖는 인수들을 받아들이는 predicate임을 지정합니다. 즉, 이러한 인수들로 호출되어 boolean-testable 결과를 생성할 수 있습니다.

regular_invocable 는 호출 가능 객체나 인자를 수정하지 않고 동등성 보존 을 요구한다는 점에 유의하십시오.

동등성 보존

표준 라이브러리 개념의 requires expressions 에 선언된 표현식들은 equality-preserving 해야 합니다(다르게 명시된 경우를 제외하고).

참고문헌

  • C++23 표준 (ISO/IEC 14882:2024):
  • 18.7.4 Concept predicate [concept.predicate]
  • C++20 표준(ISO/IEC 14882:2020):
  • 18.7.4 Concept predicate [concept.predicate]