Namespaces
Variants

std:: uniform_random_bit_generator

From cppreference.net
헤더 파일에 정의됨 <random>
template < class G >

concept uniform_random_bit_generator =
std:: invocable < G & > && std:: unsigned_integral < std:: invoke_result_t < G & >> &&
requires {
{ G :: min ( ) } - > std:: same_as < std:: invoke_result_t < G & >> ;
{ G :: max ( ) } - > std:: same_as < std:: invoke_result_t < G & >> ;
requires std:: bool_constant < ( G :: min ( ) < G :: max ( ) ) > :: value ;

} ;
(C++20 이후)

uniform_random_bit_generator<G> 개념은 G 가 균일 난수 비트 생성기(uniform random bit generator)의 타입임을 명시합니다. 즉, G 타입의 객체는 가능한 결과 범위 내의 각 값이 (이상적으로) 동일한 확률로 반환되도록 부호 없는 정수 값을 반환하는 함수 객체입니다.

의미론적 요구사항

uniform_random_bit_generator<G> 는 주어진 G 타입의 객체 g 에 대해 다음 조건을 만족할 때만 모델링됩니다:

  • g() 의 범위는 [ G :: min ( ) , G :: max ( ) ] 입니다.
  • g() 은 분할상환된 상수 복잡도를 가집니다.

참고 사항

요구 사항 std:: bool_constant < ( G :: min ( ) < G :: max ( ) ) > :: value 을 충족하려면, G :: min ( ) G :: max ( ) 모두 상수 표현식이어야 하며, 비교 결과는 true 이어야 합니다.