Boost interval コンテナー ライブラリを使用して Discrete_interval をシフトするにはどうすればよいですか?
つまり、間隔の lower() と間隔の upper() から整数 c を減算したいですか? 明らかに、新しい間隔を作成できますが、これを行う標準的な方法を探しています。
標準的な方法は、新しい間隔を作成し、それを間隔に割り当てることboost::lcl::discrete_interval
です (代入演算子は別として) 不変であるためです。したがって、間隔をシフトするには、必要な下限と上限を指定して新しい間隔を作成し、それを古い間隔に割り当てる必要があります。
boost::icl::discrete_interval<int> interval;
interval = boost::icl::discrete_interval<int>::closed(3, 4);