function
std::bernoulli_distribution::コンストラクタ(C++11)
explicit bernoulli_distribution(double p = 0.5); // (1)
bernoulli_distribution() : bernoulli_distribution(0.5) {} // (1) C++20
explicit bernoulli_distribution(double p); // (2) C++20
explicit bernoulli_distribution(const param_type& parm); // (3)
概要
- (1) : デフォルトコンストラクタ
- C++17まで : 確率
p
を受け取るコンストラクタ。
- C++20 : 確率
p
を0.5
として(2)に委譲。
- (2) : 確率
p
を受け取るコンストラクタ。確率p
でtrue
が生成され、確率1.0 - p
でfalse
が生成される。
- (3) : パラメータオブジェクトを受け取るコンストラクタ。
param_type
は、このクラスの(1)のコンストラクタと同じオーバーロードを持ち、それらのコンストラクタのパラメータを保持している。このコンストラクタでは、param
オブジェクトが持っているパラメータを、このクラスのコンストラクタに転送する。
要件
- (1)(C++17まで)、(2) :
p >= 0.0 && p <= 1.0
であること。
例
出力例
true
false
true
false
true
true
false
true
true
true
true
true
true
true
false
true
true
false
true
true
バージョン
言語
処理系
参照