upper_bound
ソート済みシーケンスにおいて指定された範囲に、指定した値を上限とする場合の次の場所を指し示すフォワードイテレータを返します。
例えば、ある既知の最大値があってそれ以上の値をソート済みシーケンスに挿入する場合に使えます。
upper_bound のサンプルコード
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
vector<char> v;
vector<char>::iterator i;
for (int j = 0; j < 26; ++j) {
v.push_back('A' + j);
}
i = upper_bound(v.begin(), v.end(), 'M');
while (i != v.end()) {
cout << *i;
++i;
}
cout << endl;
return 0;
}
実行結果は次の通りです。
./a.out
NOPQRSTUVWXYZ