Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::seed_seq(3)	      C++ Standard Libary	      std::seed_seq(3)

NAME
       std::seed_seq - std::seed_seq

Synopsis
	  Defined in header <random>
	  class	seed_seq;	      (since C++11)

	  std::seed_seq	 consumes  a  sequence of integer-valued data and pro-
       duces a requested
	  number of unsigned integer values i, 0  i < 232
	  , based on the consumed data.	The produced  values  are  distributed
       over the	entire
	  32-bit range even if the consumed values are close.

	  It provides a	way to seed a large number of random number engines or
       to seed a
	  generator  that  requires  a lot of entropy, given a small seed or a
       poorly distributed
	  initial seed sequence.

	  std::seed_seq	meets the requirements of SeedSequence.

Member types
	  Member type	     Definition
	  result_type(C++11) std::uint_least32_t

Member functions
	  constructor	   constructs and seeds	the std::seed_seq object
	  (C++11)	   (public member function)
	  operator=	   seed_seq is not assignable
	  [deleted](C++11) (public member function)
	  generate	   calculates the bias-eliminated, evenly  distributed
       32-bit values
	  (C++11)	   (public member function)
	  size		    obtains  the  number  of  32-bit  values stored in
       std::seed_seq
	  (C++11)	   (public member function)
	  param		   obtains the 32-bit values stored in std::seed_seq
	  (C++11)	   (public member function)

Example
       // Run this code

	#include <random>
	#include <cstdint>
	#include <iostream>

	int main()
	{
	    std::seed_seq seq{1,2,3,4,5};
	    std::vector<std::uint32_t> seeds(10);
	    seq.generate(seeds.begin(),	seeds.end());
	    for	(std::uint32_t n : seeds) {
		std::cout << n << '\n';
	    }
	}

Output:
	4204997637
	4246533866
	1856049002
	1129615051
	690460811
	1075771511
	46783058
	3904109078
	1534123438
	1495905678

http://cppreference.com		  2022.07.31		      std::seed_seq(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::seed_seq&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help