C++ Set 库 - upper_bound 函数
描述
它返回一个迭代器,指向容器中的第一个元素,该元素被认为在 val 之后。
声明
以下是 std::set::upper_bound 在各种 C++ 版本中的工作方式。
C++98
iterator upper_bound (const value_type& val) const;
C++11
iterator upper_bound (const value_type& val); const_iterator upper_bound (const value_type& val) const;
返回值
它返回一个迭代器,指向容器中的第一个元素,该元素被认为在 val 之后。
异常
如果抛出异常,则容器中没有任何变化。
时间复杂度
时间复杂度取决于对数。
示例
以下示例显示了 std::set::upper_bound 的用法。
#include <iostream> #include <set> int main () { std::set<int> myset; std::set<int>::iterator itlow,itup; for (int i = 1; i < 10; i++) myset.insert(i*10); itup = myset.upper_bound (60); myset.erase(itup); std::cout << "myset contains:"; for (std::set<int>::iterator it = myset.begin(); it!=myset.end(); ++it) std::cout << ' ' << *it; std::cout << '\n'; return 0; }
上述程序将正确编译和执行。
myset contains: 10 20 30 40 50 60 80 90