由于大多数人都知道C++中的Set Container通常是以红黑树的形式实现的,并且在容器上迭代时条目会按顺序出现,这可以被利用。红色的黑色树与编排
我却想去做pagenation在容器的迭代,操作性的例子,如果容器containes:
set<int> set;
// insert some data
for(auto s : set)
cout << s << " " << endl;
1, 3, 5, 7, 9, 11, 13, 15
我想杜在容器range(2,5)
yealding范围查询:矢量3, 5, 7
,这似乎不可能做的设置,是否有可能做任何STL容器分页,或者这是你必须实现它自己的情况?
好了,现在我明白你的问题(我认为),将['STD:next'(HTTP:/ /en.cppreference.com/w/cpp/iterator/next)和/或['std :: advance'](http://en.cppreference.com/w/cpp/iterator/advance)基于'std: :开始(s)'提供给你你正在寻找的东西?我*想*可能。 – WhozCraig
我怀疑你会找到一种方法来做到这一点在标准库中的线性时间少,但它并不难实现自己。 – Dukeling