名前空間
変種
操作

std::uniform_random_bit_generator

提供: cppreference.com
< cpp‎ | numeric‎ | random
 
 
 
擬似乱数生成
一様ランダムビットジェネレータ
uniform_random_bit_generator
(C++20)
エンジンとエンジンアダプタ
非決定的なジェネレータ
分布
一様分布
ベルヌーイ分布
ポアソン分布
正規分布
標本分布
シードシーケンス
(C++11)
C のライブラリ
 
ヘッダ <random> で定義
template<class G>

concept uniform_random_bit_generator =
  std::invocable<G&>&& std::unsigned_integral<std::invoke_result_t<G&>>&&
  requires {
    { G::min()}-> std::same_as<std::invoke_result_t<G&>>;
    { G::max()}-> std::same_as<std::invoke_result_t<G&>>;
    requires std::bool_constant<(G::min()< G::max())>::value;

  };
(C++20以上)

コンセプト uniform_random_bit_generator<G>G が一様ランダムビットジェネレータの型である、つまり、 G 型のオブジェクトが可能な結果の範囲内の各々の値の返される確率が (理想的には) 等しいような符号なし整数値を返す関数オブジェクトであることを表します。

[編集]意味論の要件

uniform_random_bit_generator<G> は、 G 型の任意のオブジェクト g が与えられたとき、以下の内容を満たす場合にのみ、モデル化されます。

  • g()[G::min(), G::max()] の範囲内である
  • g() の計算量が償却定数時間である

[編集]ノート

要件 requires std::bool_constant<(G::min()< G::max())>::value; は、 G::min() および G::max() がともに定数式で、比較の結果が true である場合のみ満たされます。

close