integer_like
コンセプト · 分数ライブラリ
template <class T>
concept integer_like = std::regular<T> && std::totally_ordered<T> && requires(T a, T b) {
{ a + b } -> std::convertible_to<T>;
{ a - b } -> std::convertible_to<T>;
{ a * b } -> std::convertible_to<T>;
{ a / b } -> std::convertible_to<T>;
{ a % b } -> std::convertible_to<T>;
{ -a } -> std::convertible_to<T>;
T(0);
T(1);
};
概要
Fraction の要素型に必要な整数演算を表す concept
四則演算・剰余・単項 -・全順序を持ち、0/1 を直接初期化できる型。 std::int64_t・__int128・BigInt などが該当する。
計算量
- コンパイル時制約で実行時計算量はない
関連項目
Fraction— 分数ライブラリ