在 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
吗?最后,是否有一个函数(例如模板值)可以从静态有界区间(编译类型定义的边界)确定编译类型?