std::seed_seq
来自cppreference.com
![]() |
该页由英文版wiki使用Google Translate机器翻译而来。
该翻译可能存在错误或用词不当。鼠标停留在文本上可以看到原版本。你可以帮助我们修正错误或改进翻译。参见说明请点击这里. |
在头文件 <random> 中定义
|
||
class seed_seq; |
(C++11 起) | |
std::seed_seq
消耗了整数值的数据序列,并产生一个请求数量的无符号整数值i
,0 ≤ i < 232,基于所消耗的数据。所产生的值的分布在整个32位的范围内,即使消耗的值接近.
原文:
std::seed_seq
consumes a sequence of integer-valued data and produces 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.
[编辑] 会员类型
会员类型
|
Definition |
result_type
|
std::uint_least32_t |
[编辑] 成员函数
结构和种子的std :: seed_seq对象 原文: constructs and seeds the std::seed_seq object (公共成员函数) | |
operator= (删除) |
不可复制的转让 (公共成员函数) |
计算的偏差消除,均匀分布的32位值 原文: calculates the bias-eliminated, evenly distributed 32-bit values (公共成员函数) | |
获得的存储在std :: seed_seq的32位值 原文: obtains the number of 32-bit values stored in std::seed_seq (公共成员函数) | |
获得32位的值存储在std :: seed_seq的 原文: obtains the 32-bit values stored in std::seed_seq (公共成员函数) |
[编辑] 示例
#include <random> #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'; }
输出:
4204997637 4246533866 1856049002 1129615051 690460811 1075771511 46783058 3904109078 1534123438 1495905678