作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
SeedableRng
有 an example ,但没有解释种子是什么。 Searching for the Seed
type不提供细节。在 GitHub 源目录中搜索也没有为我解决这个问题。
let seed: &[_] = &[1, 2, 3, 4];
let mut rng: StdRng = SeedableRng::from_seed(seed);
seed
必须是四元素整数数组吗?为什么?可以是别的吗?
最佳答案
Seed
可以是 trait 的实现者决定的任何类型,它是定义为 trait 本身的一部分的通用类型:
pub trait SeedableRng<Seed>: Rng {
// ^^^^
fn reseed(&mut self, _: Seed);
fn from_seed(seed: Seed) -> Self;
}
Isaac64Rng
使用一片 u64
:
impl<'a> SeedableRng<&'a [u64]> for Isaac64Rng
// ^^^^^^^^^
XorShiftRng
恰好使用 4 个 u32
:
impl SeedableRng<[u32; 4]> for XorShiftRng
// ^^^^^^^^
可以看到all the implementers of SeedableRng
from inside the rand crate in its documentation :
impl<S, R: SeedableRng<S>, Rsdr: Reseeder<R> + Default> SeedableRng<(Rsdr, S)> for ReseedingRng<R, Rsdr>
impl<'a> SeedableRng<&'a [u32]> for ChaChaRng
impl<'a> SeedableRng<&'a [u32]> for IsaacRng
impl<'a> SeedableRng<&'a [u64]> for Isaac64Rng
impl SeedableRng<[u32; 4]> for XorShiftRng
impl<'a> SeedableRng<&'a [usize]> for StdRng
其他 crate 也可以定义具有不同种子类型的随机数生成器。
关于rust - SeedableRng 种子的可能类型/值是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49342806/
我有以下 Rust 代码,其最终目标是在给定公钥的情况下生成确定性用户名: use openssl::pkey::{PKey, Private}; use rand::{Rng, SeedableRn
SeedableRng 有 an example ,但没有解释种子是什么。 Searching for the Seed type不提供细节。在 GitHub 源目录中搜索也没有为我解决这个问题。 l
我是一名优秀的程序员,十分优秀!