std::uniform_random_bit_generator
| Definiert in Header <random> |
||
| template< class G > concept uniform_random_bit_generator = |
(seit C++20) | |
Das Konzept uniform_random_bit_generator<G> gibt an, dass G der Typ eines gleichverteilten Zufallsbitgenerators ist, d.h. Objekte vom Typ G sind Funktionsobjekte, die vorzeichenlose Ganzzahlen zurückgeben, so dass jeder Wert im Bereich der möglichen Ergebnisse (idealerweise) die gleiche Wahrscheinlichkeit hat, zurückgegeben zu werden.
[bearbeiten] Semantische Anforderungen
uniform_random_bit_generator<G> wird nur dann modelliert, wenn für jedes Objekt g vom Typ G gilt:
-
g()liegt im Bereich[G::min(),G::max()], -
g()hat eine amortisierte konstante Komplexität.
[bearbeiten] Hinweise
Um die Anforderung std::bool_constant<(G::min() < G::max())>::value zu erfüllen, müssen sowohl G::min() als auch G::max() konstante Ausdrücke sein, und das Ergebnis des Vergleichs muss true sein.