由於大多數人都知道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