2013-06-24 49 views

回答

1

規範的方法是構造一個新的時間間隔並將其分配給您的時間間隔,因爲boost::lcl::discrete_interval是不可變的(除賦值運算符外)。因此,要移動間隔,您必須創建一個具有所需下限和上限的新時間間隔,並將其分配給舊時間間隔。

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

至少我不會再花費時間試圖找到解決方案不存在。 即使間隔是不可變的,爲什麼不有一個函數需要一個T類型的間隔和一個常量(在你的情況下是int),並返回一個新的間隔,並且間隔已經移過來了? 這並不難寫,但它似乎是有道理的在API中有這樣的東西。 – daj