C++ 集合库 - find 函数



描述

它搜索容器中与 val 等效的元素,如果找到则返回指向它的迭代器,否则返回指向 set::end 的迭代器。

声明

以下是 std::set::find 在不同 C++ 版本中的工作方式。

C++98

iterator find (const value_type& val) const;

C++11

const_iterator find (const value_type& val) const;
iterator       find (const value_type& val);

返回值

它返回一个指向 set::end 的迭代器。

异常

如果抛出异常,容器不会发生任何更改。

时间复杂度

时间复杂度取决于对数。

示例

以下示例演示了 std::set::find 的用法。

#include <iostream>
#include <set>

int main () {
   std::set<int> myset;
   std::set<int>::iterator it;

   for (int i = 1; i <= 10; i++) myset.insert(i*10);    
   it = myset.find(40);
   myset.erase (it);
   myset.erase (myset.find(60));

   std::cout << "myset contains:";
   for (it = myset.begin(); it!=myset.end(); ++it)
      std::cout << ' ' << *it;
   std::cout << '\n';

   return 0;
}

以上程序将编译并正确执行。

myset contains: 10 20 30 50 70 80 90 100
set.htm
广告
© . All rights reserved.