Boost.ICL で、間隔が閉じているか開いているかを判断する標準的な方法は何ですか?
現在、私はこれをやっています:
#include<boost/icl/discrete_interval.hpp>
#include<iostream>
int main(){
boost::icl::discrete_interval<int> di({2, 5}); // closed-open by default, but other combinations are possible
if(contains(di, lower(di)) std::cout << "left closed\n"; else std::cout << "left open\n";
if(contains(di, upper(di)) std::cout << "right closed\n"; else std::cout << "right open\n";
}
しかし、それはエレガントではないようです。
それを判断する機能はありますか?(動的に制限された間隔の場合)
また、それはうまくいきcontinuous_interval
ますか?最後に、静的な有界間隔 (コンパイル タイプ定義の境界) からコンパイル タイプを決定する関数 (テンプレート値など) はありますか?