public member function
<unordered_map>

std::unordered_map::find

      iterator find ( const key_type& k );const_iterator find ( const key_type& k ) const;
Get iterator to element
Searches the container for an element with k as key and returns an iterator to it if found, otherwise it returns an iterator to unordered_map::end (the element past the end of the container).

Another member function, unordered_map::count, can be used to just check whether a particular key exists.

The mapped value can also be accessed directly by using member functions at oroperator[].

参数

k
Key to be searched for.
成员类型key_type是容器中元素的键的类型,在 unordered_map 中定义为其第一个模板参数的别名().

返回值

An iterator to the element, if the specified key value is found, or unordered_map::end if the specified key is not found in the container.

成员类型iteratorconst_iteratorforward iterator 类型。

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// unordered_map::find
#include <iostream>
#include <string>
#include <unordered_map>

int main ()
{
  std::unordered_map<std::string,double> mymap = {
     {"mom",5.4},
     {"dad",6.1},
     {"bro",5.9} };

  std::string input;
  std::cout << "who? ";
  getline (std::cin,input);

  std::unordered_map<std::string,double>::const_iterator got = mymap.find (input);

  if ( got == mymap.end() )
    std::cout << "not found";
  else
    std::cout << got->first << " is " << got->second;

  std::cout << std::endl;

  return 0;
}

可能的输出
who? dad
dad is 6.1


复杂度

平均情况:常量。
最坏情况:与 容器大小 成线性关系。

迭代器有效性

没有变化。

另见