#include
<algorithm> (seit C++17)
Out sample (In first, In last, Out first2, N n, UniformRandomBitGenerator zufall) // C++17 Out ranges::sample (Range r, Out first2, N n, UniformRandomBitGenerator zufall) Out ranges::sample (In first, In last, Out first2, N n, UniformRandomBitGenerator zufall)
Liefert n Werte aus dem Bereich [first,last) in zufälliger Folge.
first | Anfang des Bereiches |
last | Ende des Bereiches |
n | Anzahl der zu liefernden Werte ⇐ std::distance(first, last) |
zufall | Funktor |
Rückgabewert: Ende des Ausgabebereiches.
// adapted from cppref>cpp/cpp/algorithm/sample #include <algorithm> #include <ctime> #include <iostream> #include <iterator> #include <random> #include <string> int main() { std::string in = "abcdefgh", out; // auto rng = std::mt19937{std::random_device{}()}; auto rng = std::mt19937(time(NULL)); // no truly random_device on MinGW implementation std::sample(in.begin(), in.end(), std::back_inserter(out), 5, rng); std::cout << "five random letters out of " << in << " : " << out << '\n'; }