乱数を生成する必要があるテスト プログラムがあります。したがって、使用して比較するテストを行いました
"uVal = rand::task_rng().gen();"
たとえば、乱数を使用してオブジェクトを作成する場合と比較して、乱数が生成されるたびに。:
let mut oRandom = std::rand::task_rng()
複数の乱数を生成します。作成したオブジェクト (oRandom) を使用する方がはるかに高速なので、オブジェクトを乱数を生成する関数に渡す必要があると考えましたが、それを行う方法を見つけることができませんでした。重要ではありませんが、実行できると思います。
例 1 : オブジェクトを使用しない : (2 よりもはるかに遅い)
let mut uVal : u8;
for _ in range(1, iMax) {
uVal = std::rand::task_rng().gen();
例 2 : オブジェクトの使用 : (1 よりもはるかに高速)
let mut oRandom = std::rand::task_rng();
let mut uVal : u8;
for _ in range(1, iMax) {
uVal = oRandom.gen();
例 3: オブジェクトを関数に渡そうとする試み:
12 let mut oRandom = std::rand::task_rng();
13 fTest03(iMax, &mut oRandom);
53 fn fTest03(iMax : i64, oRandom : &mut std::rand::task_rng) {
This results in the following error :
test_rand003.rs:53:38: 53:57 error: use of undeclared type name
`std::rand::task_rng`
test_rand003.rs:53 fn fTest03(iMax : i64, oRandom : &mut std::rand::task_rng) {
上記の 13 行目の変数「oRandom」を関数に渡すにはどうすればよいですか?