std::philox_engine<UIntType,w,n,r,consts>::
set_counter
来自cppreference.com
<
cpp
|
numeric
|
random
|
philox engine
C++
编译器支持
自立实现与有宿主实现
语言
标准库
标准库标头
具名要求
功能特性测试宏
(C++20)
语言支持库
概念库
(C++20)
元编程库
(C++11)
诊断库
通用工具库
字符串库
容器库
迭代器库
范围库
(C++20)
算法库
数值库
本地化库
输入/输出库
文件系统库
(C++17)
正则表达式库
(C++11)
并发支持库
(C++11)
技术规范
符号索引
外部库
数值库
常用数学函数
数学特殊函数
(C++17)
数学常数
(C++20)
基本线性代数算法
(C++26)
浮点环境
(C++11)
复数
数值数组 (
valarray
)
伪随机数生成
因数运算
gcd
(C++17)
lcm
(C++17)
插值
midpoint
(C++20)
lerp
(C++20)
饱和算术
add_sat
(C++26)
sub_sat
(C++26)
saturate_cast
(C++26)
mul_sat
(C++26)
div_sat
(C++26)
泛型算术运算
iota
(C++11)
ranges::iota
(C++23)
accumulate
inner_product
adjacent_difference
partial_sum
reduce
(C++17)
transform_reduce
(C++17)
inclusive_scan
(C++17)
exclusive_scan
(C++17)
transform_inclusive_scan
(C++17)
transform_exclusive_scan
(C++17)
位操作
has_single_bit
(C++20)
bit_cast
(C++20)
bit_ceil
(C++20)
bit_floor
(C++20)
bit_width
(C++20)
rotl
(C++20)
rotr
(C++20)
popcount
(C++20)
countl_zero
(C++20)
countl_one
(C++20)
countr_zero
(C++20)
countr_one
(C++20)
byteswap
(C++23)
endian
(C++20)
伪随机数生成
均匀随机位生成器
uniform_random_bit_generator
(C++20)
随机数引擎
linear_congruential_engine
(C++11)
mersenne_twister_engine
(C++11)
subtract_with_carry_engine
(C++11)
philox_engine
(C++26)
随机数引擎适配器
discard_block_engine
(C++11)
independent_bits_engine
(C++11)
shuffle_order_engine
(C++11)
预定义随机数生成器
非确定随机数
random_device
(C++11)
工具
generate_canonical
(C++11)
seed_seq
(C++11)
随机数算法
ranges::generate_random
(C++26)
C 随机库
rand
srand
RAND_MAX
随机数分布
均匀分布
uniform_int_distribution
(C++11)
uniform_real_distribution
(C++11)
generate_canonical
(C++11)
伯努利分布
bernoulli_distribution
(C++11)
binomial_distribution
(C++11)
negative_binomial_distribution
(C++11)
geometric_distribution
(C++11)
泊松分布
poisson_distribution
(C++11)
exponential_distribution
(C++11)
gamma_distribution
(C++11)
weibull_distribution
(C++11)
extreme_value_distribution
(C++11)
正态分布
normal_distribution
(C++11)
lognormal_distribution
(C++11)
chi_squared_distribution
(C++11)
cauchy_distribution
(C++11)
fisher_f_distribution
(C++11)
student_t_distribution
(C++11)
采样分布
discrete_distribution
(C++11)
piecewise_constant_distribution
(C++11)
piecewise_linear_distribution
(C++11)
std::philox_engine
成员函数
philox_engine::philox_engine
philox_engine::seed
philox_engine::set_counter
生成
philox_engine::operator()
philox_engine::discard
特征
philox_engine::min
philox_engine::max
非成员函数
operator==
(C++26)
operator<<
operator>>
(C++26)
(C++26)
void
set_counter
(
const
std::
array
<
result_type, n
>
&
c
)
;
(C++26 起)
设置随机数引擎的
计数器
。
对于
[
0
,
n
)
中的每个整数
k
,将
\(\scriptsize X_k \)
X
k
设为
\(\scriptsize c_{n-1-k} \mod 2^w \)
c
n-1-k
mod 2
w
。
j
的值被设为
n
-
1
。
[1]
↑
因为
j
会被设为
n
-
1
,所以下一次状态变换必然会生成新的随机值。
参数
c
-
用于设置计数器的整数序列
复杂度
\(\scriptsize O(n) \)
O(n)
。
参阅
(构造函数)
(C++26)
构造引擎
(公开成员函数)
seed
(C++26)
设置引擎的当前状态
(公开成员函数)