random_independent_bits_engine
random_independent_bits_engine (독립 비트 엔진)
std::independent_bits_engine은 래핑된 엔진과 다른 비트 수의 난수를 생성하는 난수 엔진 어댑터예요. C++11부터 사용할 수 있어요.
출처: cppreference
본문
<random> 헤더에 정의되어 있고, 시그니처는 다음과 같아요.
template<
class Engine,
std::size_t W,
class UIntType
> class independent_bits_engine;
(since C++11)
independent_bits_engine은 래핑된 엔진과 다른 비트 수의 난수를 생성하는 난수 엔진 어댑터예요.
템플릿 매개변수 (Template parameters)
- Engine — 래핑된 엔진의 타입
- W — 생성된 수가 가져야 할 비트 수
- UIntType — 생성된 난수의 타입. param이 cv 한정되지 않고 unsigned short, unsigned int, unsigned long, unsigned long long 중 하나가 아니면 효과는 정의되지 않아요.
타입 요구사항 (Type requirements)
- Engine은 RandomNumberEngine 요구사항을 만족해야 해요.
- W는 0보다 커야 하고
std::numeric_limits<UIntType>::digits보다 크지 않아야 해요.
멤버 타입 (Member types)
| 멤버 타입 | 정의 |
|---|---|
| result_type | UIntType |
멤버 함수 (Member functions)
- (constructor) — 엔진 어댑터 생성
- seed — 기본 엔진의 상태 설정
- base — 기본 엔진 반환
- 생성: operator() — 기본 엔진 상태 진행 및 생성 값 반환; discard — 어댑터 상태 진행
- 특성: min [static] — 가장 작은 생성 값; max [static] — 가장 큰 생성 값
비멤버 함수 (Non-member functions)
- operator== operator!= — 두 엔진 어댑터 비교
- operator<< operator>> — 스트림 입출력