C++ 命名要求: SeedSequence (自 C++11 起)
来自 cppreference.cn
SeedSequence 是一个对象,它基于消耗的整数数据范围生成范围 0 ≤ i < 232
内的无符号整数值 i。
[[编辑]] 要求
S
是 SeedSequence 类型。q
是S
的对象,而r
可能是S
的常量对象。T
是result_type
。ib
、ie
是 LegacyInputIterator,其value_type
是至少 32 位的无符号整数值。il
是 std::initializer_list<T>。rb
、re
是 可修改的 LegacyRandomAccessIterator,其value_type
是至少 32 位的无符号整数值。ob
是 LegacyOutputIterator。
表达式 | 类型 | 注释 | 复杂度 |
---|---|---|---|
S::result_type |
T |
至少 32 位的无符号整数。 | 编译时 |
S() |
创建一个种子序列,其初始状态与其他类型为 S 的默认构造种子序列相同。 |
常数 | |
S(ib, ie) |
创建一个种子序列,其内部状态取决于 [ ib, ie) 提供的一些或所有输入位。 |
O(ie - ib) | |
S(il) |
与 S(il.begin(), il.end()) 相同。 |
||
q.generate(rb, re) |
void |
用取决于初始提供的值和先前对 generate 的潜在调用的 32 位数量填充 [ rb, re) 。如果 rb == re ,则不执行任何操作。 |
O(re - rb) |
r.size() |
size_t |
param 复制的 32 位整数的数量。 |
常数 |
r.param(ob) |
void |
将 32 位值复制到 ob ,如果传递给 S 的构造函数,这些值将重现对象的当前状态。 |
O(r.size()) |