如何在使用C++Boost间隔容器库(ICL)时移动间隔

How to shift an interval when using the C++ Boost interval container library (ICL)?

本文关键字:ICL 移动 C++Boost      更新时间:2023-10-16

如何使用Boost间隔容器库移动discret_interval?

即,我想从区间的下限()和上限()中减去整数c?很明显,我可以创建一个新的区间,但我正在寻找规范的方法来做到这一点。

规范的方法是构造一个新的区间并将其分配给您的区间,因为boost::lcl::discrete_interval是不可变的(除了赋值运算符)。因此,要改变区间,你必须创建一个具有所需下限和上限的新区间,并将其分配给旧区间。

boost::icl::discrete_interval<int> interval;
interval = boost::icl::discrete_interval<int>::closed(3, 4);