Namespaces
Variants

C++ named requirements: RandomNumberEngineAdaptor (since C++11)

From cppreference.net
C++ named requirements

RandomNumberEngineAdaptor 는 다른 RandomNumberEngine 의 출력을 변환하는 RandomNumberEngine 입니다. 후자는 베이스 엔진 이라고 불립니다.

요구사항

주어진

  • B , RandomNumberEngine 요구 사항을 만족하는 타입
  • b , B 타입의 객체
  • A , RandomNumberEngineAdaptor 요구 사항을 만족하며 B 를 기본 엔진으로 사용하는 타입
  • a , A 타입의 객체
function semantics
A :: A ( ) ; 기본 엔진이 기본 생성자에 의해 초기화됩니다.
bool operator == ( const A & lhs, const A & rhs ) ; lhs 의 기본 엔진이 rhs 의 기본 엔진과 같은지 여부를 반환합니다.
A :: A ( result_type s ) ; 기본 엔진이 s 로 초기화됩니다.
template < class Sseq > A :: A ( Sseq & q ) ; 기본 엔진이 q 로 초기화됩니다.
void seed ( ) ; b. seed ( ) 를 호출합니다.
void seed ( result_type s ) ; b. seed ( s ) 를 호출합니다.
template < class Sseq > void seed ( Sseq & q ) ; b. seed ( q ) 를 호출합니다.

또한

  • A 의 각 함수의 복잡도는 B 의 함수의 복잡도를 초과하지 않음
  • A 의 상태는 B 의 상태를 포함함
  • A 의 상태 크기는 b 의 크기보다 작지 않음
  • A 의 상태 복사는 B 의 상태 복사를 포함함
  • A 의 텍스트 표현은 B 의 텍스트 표현을 포함함

표준 라이브러리

다음 표준 라이브러리 기능들은 RandomNumberEngineAdaptor 를 만족합니다:

난수 엔진의 일부 출력을 폐기함
(클래스 템플릿)
난수 엔진의 출력을 지정된 비트 수의 블록으로 패킹함
(클래스 템플릿)
난수 엔진의 출력을 다른 순서로 전달함
(클래스 템플릿)