operator==,!= (std::linear_congruential_engine)
From cppreference.com
< cpp | numeric | random | linear congruential engine
| friend bool operator==( const linear_congruential_engine& lhs, const linear_congruential_engine& rhs ); |
(1) | (C++11以降) |
| friend bool operator!=( const linear_congruential_engine& lhs, const linear_congruential_engine& rhs ); |
(2) | (C++11以降) (C++20まで) |
2つの擬似乱数生成器を比較します。2つの生成器は、それらの内部状態が同等であれば等しいとみなされます。つまり、任意の回数 operator() を呼び出した場合に、同等の値を生成する場合です。
これらの関数は、通常の非修飾または修飾 lookupからは見えませんが、引数がstd::linear_congruential_engine<UIntType, a, c, m> の関連クラスである場合にのみ、引数依存 lookup によって検出できます。
|
|
(C++20以降) |
[編集] パラメータ
| lhs, rhs | - | 比較する生成器 |
[編集] 戻り値
1) エンジンが等しい場合はtrue、そうでない場合はfalse。
2) エンジンが等しくない場合はtrue、そうでない場合はfalse。
[編集] 不具合報告
以下の動作変更を伴う欠陥報告が、以前に公開されたC++標準に遡って適用されました。
| DR | 適用対象 | 公開された動作 | 正しい動作 |
|---|---|---|---|
| LWG 3519 | C++11 | 等価演算子の形式は未指定でした | 隠しフレンドとして指定されました |