首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

std::mersenne_twister_engine

Defined in header <random>

?

?

template< class UIntType, size_t w, size_t n, size_t m, size_t r, UIntType a, size_t u, UIntType d, size_t s, UIntType b, size_t t, UIntType c, size_t l, UIntType f > class mersenne_twister_engine;

?

(since C++11)

mersenne_twister_engine是一个基于梅森扭子算法。它产生高质量的无符号整数型随机数。UIntType关于区间。[0,2w

-1]。

以下类型别名定义了具有两个常用参数集的随机数引擎:

在标头中定义<random>

*。

类型定义

mt 19937 STD::Mersenne[医]捻线机[医]引擎<std::uint[医]扣件32[医]t,32,624,397,31,0x9908b0df,11,0xffffff,7,0x9d2c5680,15,0xefc60000,18,1812433253>32位Mersenne Twister,松本和西村,1998。

19937[医]64性病::Mersenne[医]捻线机[医]引擎<std::uint[医]快64[医]t,64,312,156,31,0xb5026f5a96619e9,29,0x555555555555555555,17,0x71d67fffeda60000,37,0xfff7eee0000000,43,6364136223846793005>64位Mersenne Twister,松本和西村,2000。

成员类型

Member type

Definition

result_type

The integral type generated by the engine. Results are undefined if this is not an unsigned integral type.

成员函数

建设与播种

*。

%28构造函数%29构造引擎%28公共成员函数%29

种子设置引擎%28公共成员函数%29的当前状态。

世代

运算符%28%29提升引擎%27s状态并返回生成值%28公共成员函数%29

丢弃将引擎%27s状态提升指定数量%28公共成员函数%29

特征

敏静态获取输出范围%28公共静态成员函数%29中的最小可能值。

马克斯静态获取输出范围%28公共静态成员函数%29中的最大可能值。

非会员职能

operator==operator!=

compares the internal states of two pseudo-random number engines (function template)

operator<<operator>>

performs stream input and output on pseudo-random number engine (function template)

成员对象

constexpr size_t word_size static

the template parameter w, determines the range of values generated by the engine. (public static member constant)

constexpr size_t state_size static

the template parameter n. The engine state is n values of UIntType (public static member constant)

constexpr size_t shift_size static

the template parameter m (public static member constant)

constexpr size_t mask_bits static

the template parameter r, also known as the twist value. (public static member constant)

constexpr UIntType xor_mask static

the template parameter a, the conditional xor-mask. (public static member constant)

constexpr size_t tempering_u static

the template parameter u, first component of the bit-scrambling (tempering) matrix (public static member constant)

constexpr UIntType tempering_d static

the template parameter d, second component of the bit-scrambling (tempering) matrix (public static member constant)

constexpr size_t tempering_s static

the template parameter s, third component of the bit-scrambling (tempering) matrix (public static member constant)

constexpr UIntType tempering_b static

the template parameter b, fourth component of the bit-scrambling (tempering) matrix (public static member constant)

constexpr size_t tempering_t static

the template parameter t, fifth component of the bit-scrambling (tempering) matrix (public static member constant)

constexpr UIntType tempering_c static

the template parameter c, sixth component of the bit-scrambling (tempering) matrix (public static member constant)

constexpr size_t tempering_l static

the template parameter l, seventh component of the bit-scrambling (tempering) matrix (public static member constant)

constexpr UIntType initialization_multiplier static

the template parameter f (public static member constant)

constexpr UIntType default_seed static

the constant value 5489u (public static member constant)

注记

默认构造的第一万个连续调用。std::mt19937是产生价值的必要条件。4123659995...

默认构造的第一万个连续调用。std::mt19937_64是产生价值的必要条件。9981545732273789042...

代码语言:txt
复制
 ? cppreference.com

在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com