<random>
Określa liczbę generatorów.
#include <random>
Uwagi
A generator liczb losowych jest obiektem, który wytwarza sekwencja wartości pseudolosowych.Generator, dającą się równomiernie w określonym zakresie wartości jest silnika.Silnik może być łączone z dystrybucji, albo poprzez silnik jako argument do dystrybucji operator() lub za pomocą variate_generator Class, produkować wartości, które są rozmieszczone w sposób, który jest zdefiniowany przez dystrybucji.
Większość generatory liczb losowych szablonów, których parametry dostosować wytwornicy.Opisy generatory, których typ jako argument należy wspólne nazwy parametrów szablonu do opisu właściwości typu, które są dozwolone jako typu argumentu rzeczywistych, w następujący sposób:
IntTypeWskazuje typ integralną podpisem lub bez.
UIntTypeWskazuje typ bez znaku.
RealTypeWskazuje typ zmiennoprzecinkowych.
Silnik jest TR1 klasy lub szablonu klasy, której wystąpienia działa jako źródło liczb losowych równomiernie między wartością minimalną i maksymalną.Silnik może być prosty silnik lub silnika mieszanek.Każdy silnik ma następujące elementy:
typedef numeric-type result_typejest to typ zwracany przez generator operator().
result_type min()Zwraca minimalną wartość zwracaną przez generator operator().
result_type max()Zwraca maksymalną wartość zwracaną przez generator operator().Gdy result_type jest typem całkowitym jest maksymalna wartość, która może być rzeczywiście zwrócona; gdy result_type jest typu zmiennoprzecinkowego, jest to najmniejsza wartość większa od wszystkich wartości, które mogą być zwrócone.
void seed()Funkcji materiału siewnego inicjuje silnika z domyślne wartości materiału siewnego.
template <class InIt> void seed(InIt& first, InIt last)Funkcja materiału siewnego nasion silnika za pomocą wartości typu unsigned long z serii półotwartych jest wskazywana przez [first, last).Jeśli sekwencja nie jest wystarczająco długi, aby w pełni zainicjować aparatu, funkcja przechowuje wartość last w first i generuje obiektu typu std::invalid_argument.
[!UWAGA]
Tylko silniki zgodność TR1 obejmują tego członka.
result_type operator()()Zwraca wartości, które są równomiernie między min() i max().
min, max, i result_type nie są opisane szczegółowo dla silników, które należy wykonać.
Począwszy od programu Visual Studio 2010, każdy silnik, z wyjątkiem tych zgodność TR1 obejmuje również następujące elementy:
Jawne konstruktora z argumentem result_type x0 który tworzy silnika bakterią tak, jakby przez wywołanie seed(x0).
Jawne konstruktora z argumentem seed_seq& seq który tworzy silnika bakterią tak, jakby przez wywołanie seed(seq).
void seed(result_type x0)Funkcja materiału siewnego nasion silnika z wartością materiału siewnego x0.
void seed(seed_seq& seq)Funkcja materiału siewnego nasion silnika wartościami materiału siewnego z seq.
void discard(unsigned long long count)wywołuje operator() razy licznik i odrzutów każdej wartości.
Każdy silnik ma Państwo , który określa kolejność wartości, które mają być generowane przez kolejne wywołania operator().Państwa dwóch obiektów tego samego typu, można porównać przy użyciu operator== i operator!=.Jeśli porównać dwa Państwa jako równe, obiekty wygeneruje sama sekwencja wartości.Stan obiektu, który można zapisać do strumienia jako sekwencja 32-bitowa bez znaku wartości za pomocą operator<< obiektu.Państwo nie zostaje zmieniony poprzez zapisanie go.Zapisany stan można odczytać na obiekt tego samego typu, przy użyciu operator>>.
A prosty silnik jest silnik, który produkuje bezpośrednio liczb losowych.Ta biblioteka zawiera jedną klasę, w których obiekty są proste silników.Udostępnia również cztery szablony klasy, które można tworzyć przy użyciu wartości, które przewidują parametry algorytmu który wdrażają i dziewięciu wstępnie zdefiniowane instancje tych klas szablonów.Obiekty te typy są również proste silników.
A silnika mieszanek jest silnik, który uzyskuje liczb losowych z jednego lub więcej proste silników i generuje strumienia jednolicie rozproszonych liczb losowych przy użyciu tych wartości.Ta biblioteka przewiduje dwa aparaty mieszanek szablony klasy.
A dystrybucji TR1 klasy lub szablonu klasy, której wystąpienia Przekształć strumienia jednolicie rozproszonych liczb losowych, uzyskane z silnika na strumień mieć rozkład określonej liczby losowe.Każda dystrybucja ma następujące elementy:
typedef numeric-type input_typejest typu, który powinien być zwrócony przez silnik, przekazywany do operator().
typedef numeric-type result_typejest to typ zwracany przez rozkład operator().
void reset()Usuwa wszelkie buforowane wartości, tak aby wynik następne wywołanie operator() nie zależy od wartości uzyskane z silnika przed wywołaniem.
template <class Engine> result_type operator()(Engine& eng)Zwraca wartości, które są dystrybuowane zgodnie z definicją dystrybucji za pomocą eng jako źródło wartości losowych jednolicie rozproszonych i przechowywane pakiet parametr.
input_type, result_type, i reset nie są opisane szczegółowo dla dystrybucji, które należy wykonać.
Począwszy od programu Visual Studio 2010, dystrybucji, co również ma:
typedef unspecified-type param_typepakiet parametry są przekazywane do operator() do generowania swojej zwracanej wartości.
A const param& Konstruktor inicjuje pakietu parametr przechowywanych z argumentu.
param_type param() constpobiera pakiet parametr przechowywane.
void param(const param_type&)Ustawia pakiet parametr przechowywanych z argumentu.
template <class Engine> result_type operator()(Engine& eng, param_type par0)Zwraca rozkład zgodnie z definicją dystrybucji, przy użyciu eng jako źródło wartości losowych jednolicie rozproszonych i opakowania, parametr wartości par0.
Pakiet parametrem jest obiekt, który przechowuje wszystkie parametry potrzebne dla rozkładu.Zawiera:
typedef distribution-type distribution_typejest to typ jego dystrybucji.
Jednego lub kilku konstruktorów ten sam parametr listy jako take konstruktory dystrybucji.
Parametr access funkcji rozkładu.
Operatory porównania równości i nierówności.
Biblioteki można budować jako sprawdzona wersja, a niezaznaczone wersji.Sprawdzona wersja wykorzystuje podobne do c makro assert makro, aby przetestować warunki oznaczone jako Precondition w opisach funkcjonalności.Do korzystania z wersji sprawdzonej, należy zdefiniować makro albo _RNG_CHECK lub makro _DEBUG na wartość numeryczną zera cały kod, który korzysta z biblioteki.
Klasy
Generuje rozkładu Bernoulli'ego. |
|
Generuje rozkład dwumianowy. |
|
Generuje rozkład Cauchy'ego. |
|
Generuje rozkładem chi-kwadrat. |
|
Generuje losowe, odrzucając wartości zwracane przez silnik bazowy.Zachowane zgodnooć TR1. |
|
Generuje losowe, odrzucając wartości zwracane przez silnik bazowy. |
|
Generuje dystrybucji dyskretna liczbą całkowitą. |
|
Generuje wykładniczego rozkładu. |
|
Generuje dystrybucji wartości skrajnych. |
|
Generuje rozkład Fisher F. |
|
Generuje rozkład gamma. |
|
Generuje rozkład geometryczny. |
|
Generuje losowe o określonej liczbie bitów przez przepakowaniu bity od wartości zwracane przez silnik bazowy. |
|
Generuje losowe przy użyciu algorytmu złożony liniowej.Zachowane zgodnooć TR1. |
|
Generuje losowe przy użyciu algorytmu złożony liniowej. |
|
Generuje rozkładu normalnego dziennika. |
|
Generuje losowe przy użyciu algorytmu Mersenne twister.Zachowane zgodnooć TR1. |
|
Generuje losowe przy użyciu algorytmu Mersenne twister. |
|
Generuje ujemny rozkład dwumianowy. |
|
Generuje rozkładu normalnego. |
|
Generuje obszarami stałej dystrybucji. |
|
Generuje obszarami liniowa dystrybucji. |
|
Generuje rozkładu Poissona. |
|
Generuje losowe przy użyciu zewnętrznego urządzenia. |
|
Przechowuje wektor wartości Liczba całkowita bez znaku, które mogą dostarczyć losowy materiału siewnego dla silnika liczbę losową. |
|
Generuje losowe kolejności wartości zwrócone przez silnik bazowy. |
|
Generuje rozkładu T Studenta. |
|
Generuje losowe przy użyciu Odejmij carry algorytmu.Zachowane zgodnooć TR1. |
|
Generuje losową sekwencji za pomocą liczb zmiennoprzecinkowych odjąć z carry algorytmu.Zachowane zgodnooć TR1. |
|
Generuje losowe przy użyciu Odejmij carry algorytmu. |
|
Generuje dystrybucji jednolitej liczby całkowitej.Zachowane zgodnooć TR1. |
|
Generuje dystrybucji jednolitej liczby całkowitej. |
|
Generuje równomierny zmiennoprzecinkowych.Zachowane zgodnooć TR1. |
|
Generuje równomierny zmiennoprzecinkowych. |
|
Otacza silnika i dystrybucji. |
|
Generuje rozkładu Weibulla. |
|
Generuje łączny rozkład. |
Definicje TypeDef
Wpisz definicję dla domyślnego aparatu. |
|
Wpisz definicję dla silnika kolejność losowo. |
|
Wpisz definicję dla liniowego silnika złożony. |
|
Wpisz definicję dla liniowego silnika złożony. |
|
Wpisz definicję dla silnika twister Mersenne. |
|
Wpisz definicję dla silnika twister Mersenne. |
|
Definicja typu zmiennoprzecinkowego odjąć carry silnika. |
|
Definicja typu dla różnicowym z przewozu silnika. |
|
Definicja typu zmiennoprzecinkowego odjąć carry silnika. |
|
Definicja typu dla różnicowym z przewozu silnika. |
|
Definicja typu zmiennoprzecinkowego odjąć carry silnika. |
|
Wpisz definicję dla silnika bloku Odrzuć. |
|
Definicja typu dla różnicowym z przewozu silnika. |
|
Wpisz definicję dla silnika bloku Odrzuć. |
|
Definicja typu dla różnicowym z przewozu silnika. |
|
Definicja typu zmiennoprzecinkowego odjąć carry silnika. |
Operatory
Badania, jeżeli silnik po lewej stronie operatora jest równa silnika po prawej stronie. |
|
Badania, jeżeli silnik po lewej stronie operatora nie równa się silnika po prawej stronie. |
|
Zapisuje informacje o stanie strumienia. |
|
Wyodrębnia informacje o stanie ze strumienia. |
Funkcje
Zwraca wartość zmiennoprzecinkową z losowe. |