4

假设我有一套,像这样:

my_set = {"aaron", "cathy", "john", "stewie", "xavier"};

假设我想要这样的功能:

FindFirst(my_set, "a")      // returns an iterator pointing to "aaron"
FindFirst(my_set, "aaron")  // returns an iterator pointing to "aaron"
FindFirst(my_set, "bill")   // returns an iterator pointing to "cathy"
FindFirst(my_set, "zzzzz")  // returns past-the-end iterator

基本上,它接受一个值并将迭代器返回到该元素或它之后的第一个元素(如果提供的值位于集合的末尾之后,则选择过去的迭代器)。

标准库中是否存在这样的函数,还是我必须自己编写一个?

4

1 回答 1

10

set::lower_bound是您正在寻找的功能。

于 2013-03-23T03:07:38.393 回答