<random>
많은 난수 생성기를 정의합니다.
#include <random>
설명
A 난수 생성기 난수 값의 시퀀스를 생성 하는 개체입니다.지정한 범위에 균일 하 게 분산 값을 생성 하는 생성기입니다 있는 엔진.엔진이 함께 사용할 수 있습니다는 메일, 엔진 배포에 인수로 전달 하 여 operator() 또는 사용 하 여는 variate_generator Class에서 배포를 정의 하는 방식으로 배포 되는 값을 생성 합니다.
대부분의 난수 생성기의 생성기 해당 매개 변수를 사용자 지정 서식 파일입니다.형식을 인수로 취할 생성기의 설명을 일반 템플릿 매개 변수 이름을 사용 하는 실제 인수 형식으로, 다음과 같은 허용 되는 형식의 속성을 설명 합니다.
IntType부호 있는 또는 부호 없는 정수 계열 형식을 나타냅니다.
UIntType부호 없는 정수 계열 형식을 나타냅니다.
RealType부동 소수점 형식을 나타냅니다.
엔진 소스 사이의 최소 및 최대 값을 균일 하 게 분산 된 난수를 해당 인스턴스로 갖는 역할 TR1 클래스 또는 템플릿 클래스입니다.엔진이 될 수 있는 간단한 엔진 또는 복합 엔진.모든 엔진 다음과 같은 구성원이 있습니다.
typedef numeric-type result_type생성기에서 반환 되는 형식인 operator().
result_type min()생성기에서 반환 되는 최소 값을 반환 합니다. operator().
result_type max()생성기에서 반환 되는 최대 값을 반환 합니다. operator().때 result_type 정수 계열 형식인이 실제로 반환 될 수 있습니다; 최대 값입니다. 때 result_type 부동 소수점 형식인이 반환 될 수 있는 모든 값 보다 큰 가장 작은 값입니다.
void seed()Seed 함수 엔진 기본 시드 값을 초기화 합니다.
template <class InIt> void seed(InIt& first, InIt last)형식의 값을 사용 하 여 엔진 seed 함수를 시드합니다 unsigned long 가 가리키는 것은 공개 시퀀스에서 [first, last).함수 시퀀스 엔진을 완전히 초기화 될 정도로 되지 않으면 값을 저장 합니다. last 에서 first 형식의 개체를 throw 하 고 std::invalid_argument.
[!참고]
TR1 호환성을 유지 하는 엔진만이 구성원을 포함 합니다.
result_type operator()()간에 균일 하 게 분산 값을 반환 합니다. min() 및 max().
minmax, 및 result_type 에서 수행 하는 엔진에 대해 자세히 설명 하지.
Visual Studio 2010로 시작 하는 경우 모든 엔진을 제외한 TR1 호환성을 위해 유지 다음 구성원도 포함 됩니다.
명시적인 생성자 인수로 result_type x0 seed(x0)를 호출 하 여 것 처럼 시드 엔진을 만듭니다.
명시적인 생성자 인수로 seed_seq& seq 엔진을 호출 하는 경우에 시드를 만듭니다 seed(seq).
void seed(result_type x0)시드 값을 가진 엔진 seed 함수를 시드합니다 x0.
void seed(seed_seq& seq)엔진에서 시드 값으로 seed 함수를 시드합니다 seq.
void discard(unsigned long long count)효과적으로 호출 operator() 수 배 하 고 포기 각 값입니다.
모든 엔진이는 상태 후속 호출에 의해 생성 되는 값의 순서를 결정 operator().사용 하 여 같은 형식의 두 개체의 상태를 비교할 수 있습니다 operator== 및 operator!=.두 상태 같은 것으로 비교 하는 경우 개체는 동일한 일련의 값을 생성 합니다.개체의 상태를 스트림에 일련의 32 비트의 부호 없는 값으로 사용 하 여 저장할 수 있습니다는 operator<< 개체입니다.저장 하 여 상태를 변경 되지 않습니다.저장 된 상태에 같은 유형의 개체를 사용 하 여 읽을 수 operator>>.
A 간단한 엔진 직접 난수를 생성 하는 엔진입니다.단순한 엔진 개체는 하나의 클래스만이 라이브러리를 제공 합니다.또한 알고리즘 구현, 매개 변수를 제공 하는 값을 사용 하 여 인스턴스화할 수 있습니다 네 개의 클래스 템플릿 제공 및 9는 클래스 템플릿의 인스턴스를 미리 정의 합니다.이러한 유형의 객체는 단순한 엔진 이기도합니다.
A 복합 엔진 에서 난수를 얻습니다 엔진이 이거나 더 단순 엔진 및 이러한 값을 사용 하 여 스트림을 균일 하 게 분산 된 난수를 생성 합니다.이 라이브러리 클래스 템플릿은 두 복합 엔진을 제공합니다.
A 메일 TR1 클래스 또는 템플릿 클래스를 해당 인스턴스로 갖는 균일 하 게 분산된 난수를 사용 하면 특정 분포 난수 스트림에 엔진에서 얻은 스트림으로 변환 됩니다.모든 메일 다음과 같은 구성원이 있습니다.
typedef numeric-type input_type전달 하는 엔진에 의해 반환 형식인 operator().
typedef numeric-type result_type배포는 반환 형식인 operator().
void reset()캐시 된 모든 값을 무시 하도록 다음 호출의 결과 operator() 호출 하기 전에 엔진에서 얻은 모든 값에 종속 되지 않습니다.
template <class Engine> result_type operator()(Engine& eng)반환 값을 사용 하 여 배포의 정의에 따라 분산 된 eng 는 임의의 값을 균일 하 게 분산된 하는 저장 된로 패키지 매개 변수.
input_typeresult_type, 및 reset 에 따르는 배포판에 자세히 설명 되어 없습니다.
Visual Studio 2010로 시작 하는 경우 모든 메일도 있습니다.
typedef unspecified-type param_type패키지 매개 변수의 반환 값을 생성 하려면 operator ()에 전달 됩니다.
A const param& 생성자 인수에서 패키지 저장된 매개 변수를 초기화 합니다.
param_type param() const패키지가 저장된 매개 변수를 가져옵니다.
void param(const param_type&)저장 된 매개 변수가 패키지에서 인수를 설정합니다.
template <class Engine> result_type operator()(Engine& eng, param_type par0)eng 균일 하 게 분산된 임의 값과 매개 변수는 패키지의 원본으로 사용 하는 배포 정의에 따라 분산 값을 반환 합니다. par0.
매개 변수 패키지 배포에 필요한 모든 매개 변수를 저장 하는 개체입니다.관리 카드에는 다음이 포함되어 있습니다.
typedef distribution-type distribution_type해당 배포의 유형이입니다.
동일한 매개 변수를 사용 하는 하나 이상의 생성자 배포 생성자 라인으로 나열 됩니다.
분포는 동일한 매개 변수 액세스 기능.
같음 및 같지 않음 비교 연산자입니다.
선택 된 버전으로 하 고 선택 되지 않은 버전 라이브러리를 빌드할 수 있습니다.Checked 버전 C를 유사한 매크로 사용 하 여 assert 로 조건을 테스트 하려면 매크로 표시 Precondition 기능 설명에서.선택 된 버전을 사용 하려면 두 매크로 정의 _RNG_CHECK 또는 매크로 _DEBUG 라이브러리를 사용 하는 모든 코드에서 0이 아닌 숫자 값입니다.
클래스
베르누이 분포를 생성합니다. |
|
이항 분포를 생성합니다. |
|
Cauchy 분포를 생성합니다. |
|
카이 제곱 분포를 생성합니다. |
|
기본 엔진에 의해 반환 된 값을 무시 하 여 난수 시퀀스를 생성 합니다.TR1 호환성을 위해 유지 됩니다. |
|
기본 엔진에 의해 반환 된 값을 무시 하 여 난수 시퀀스를 생성 합니다. |
|
개별 정수 분포를 생성합니다. |
|
지 수 분포를 생성합니다. |
|
극단적인 값 분포를 생성합니다. |
|
피셔 F 분포를 생성합니다. |
|
감마 분포를 생성합니다. |
|
형상 분포를 생성합니다. |
|
기본 엔진에 의해 반환 되는 값의 비트 리 팩으로 임의의 순서로 지정 된 수의 비트를 생성 합니다. |
|
선형 congruential 알고리즘을 사용 하 여 난수 시퀀스를 생성 합니다.TR1 호환성을 위해 유지 됩니다. |
|
선형 congruential 알고리즘을 사용 하 여 난수 시퀀스를 생성 합니다. |
|
로그 정규 분포를 생성합니다. |
|
회오리 Mersenne 알고리즘을 사용 하 여 난수 시퀀스를 생성 합니다.TR1 호환성을 위해 유지 됩니다. |
|
회오리 Mersenne 알고리즘을 사용 하 여 난수 시퀀스를 생성 합니다. |
|
음의 이항 분포를 생성합니다. |
|
정규 분포를 생성합니다. |
|
생성 된 piecewise 상수 배포 합니다. |
|
생성 된 piecewise 선형 배포 합니다. |
|
포아송 분포를 생성합니다. |
|
외부 장치를 사용 하 여 난수 시퀀스를 생성 합니다. |
|
벡터의 임의 시드로 난수 엔진에 대해 제공 되는 부호 없는 정수 값을 저장 합니다. |
|
기본 엔진에서 반환 된 값을 재배열 하 여 난수 시퀀스를 생성 합니다. |
|
학생 T 분포를 생성합니다. |
|
빼기 운반 알고리즘을 사용 하 여 난수 시퀀스를 생성 합니다.TR1 호환성을 위해 유지 됩니다. |
|
임의 생성 시퀀스는 부동 소수점을 사용 하 여 운반 알고리즘을 뺍니다.TR1 호환성을 위해 유지 됩니다. |
|
빼기 운반 알고리즘을 사용 하 여 난수 시퀀스를 생성 합니다. |
|
정수를 균일 한 분포를 생성합니다.TR1 호환성을 위해 유지 됩니다. |
|
정수를 균일 한 분포를 생성합니다. |
|
부동 소수점 균일 하 게 분포를 생성합니다.TR1 호환성을 위해 유지 됩니다. |
|
부동 소수점 균일 하 게 분포를 생성합니다. |
|
엔진과 분포를 래핑합니다. |
|
와이블 분포를 생성합니다. |
|
결합 된 분포를 생성합니다. |
형식 정의
기본 엔진에 대 한 정의 입력 합니다. |
|
순서 섞기 순서 엔진은 정의 입력 합니다. |
|
Congruential는 선형 엔진에 대 한 정의 입력 합니다. |
|
Congruential는 선형 엔진에 대 한 정의 입력 합니다. |
|
회오리 하는 Mersenne 엔진에 대 한 정의 입력 합니다. |
|
회오리 하는 Mersenne 엔진에 대 한 정의 입력 합니다. |
|
운반 엔진과 부동 소수점 빼기에 대 한 정의 입력 합니다. |
|
형식 정의를 추출 엔진을 수행 합니다. |
|
운반 엔진과 부동 소수점 빼기에 대 한 정의 입력 합니다. |
|
형식 정의를 추출 엔진을 수행 합니다. |
|
운반 엔진과 부동 소수점 빼기에 대 한 정의 입력 합니다. |
|
포기 하는 블록 엔진에 대 한 정의 입력 합니다. |
|
형식 정의를 추출 엔진을 수행 합니다. |
|
포기 하는 블록 엔진에 대 한 정의 입력 합니다. |
|
형식 정의를 추출 엔진을 수행 합니다. |
|
운반 엔진과 부동 소수점 빼기에 대 한 정의 입력 합니다. |
연산자
엔진 연산자의 왼쪽에서 오른쪽에 엔진 같으면 테스트 합니다. |
|
엔진 연산자의 왼쪽에서 오른쪽에 엔진으로 같지 않으면 테스트 합니다. |
|
상태 정보를 스트림에 씁니다. |
|
스트림에서 상태 정보를 추출합니다. |
함수
부동 소수점 값을 임의의 순서로 반환합니다. |