Interval
メソッド
- double < interval < double
- intervalの上限・下限を指定する。比較演算子ではなくinterval自身のメンバへの代入操作になるので要注意。演算子には<,<=,>,>=が用いられる(intervalの左右で意味が逆転する)。
返り値は自身への参照(Interval&)。
- range.including(double value)
- valueがintervalに含まれるか否か。
返り値はbool。
問題
メンバ名
候補
- begin - end
- bottom - top
- floor - ceil
- lower - upper
逆集合
Intervalの完全な集合としての定義
小数点
範囲を小数点で実装した場合、
0.2 <= interval < 2.0;
に収まる整数は<1,2>だが、単純にintでキャストした場合<0,1,2>になる。 解決策としては無名構造体を使って自動キャストでceilをとる方法があるが、テンプレート関数で困るかもしれない(std::cout << (double)interval.begin とかは明示的なキャストが必要)。
キーワード:
参照:[リファレンスマニュアル] [Range] [Matrix]