close
Пространства имён
Варианты
Действия

std::map::find

Материал из cppreference.com

<metanoindex/>

 
 
 
std::map
Функции элементы
Доступ к элементам
Итераторы
Ёмкость
Модификаторы
(C++17)
Просмотр
Наблюдатели
Функции, не являющиеся элементами
(C++20)
(до C++20)(до C++20)(до C++20)(до C++20)(до C++20)(C++20)
Принципы вывода (C++17)
 
<tbody> </tbody>
iterator find( const Key& key );
const_iterator find( const Key& key ) const;
Находит элемент с ключом key.
Оригинал:
Finds an element with key key.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

Параметры

key
Ключевое значение элемента для поиска
Оригинал:
key value of the element to search for
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

Возвращаемое значение

Итератор элемент с ключом key. Если такой элемент не найден, пришедшего к концу (см. end()) итератора возвращается.
Оригинал:
Iterator to an element with key key. If no such element is found, past-the-end (see end()) iterator is returned.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

Сложность

Logarithmic in the size of the container.

См. также

возвращает количество элементов, соответствующих определённому ключу
(public функция-элемент) [править]
возвращает диапазон элементов, соответствующих определённому ключу
(public функция-элемент) [править]


Пример

Demonstrates the risk of accessing non-existing elements via operator [].

#include <string>
#include <iostream>
#include <map>

int main()
{
    typedef std::map<std::string,int>  mapT;

    mapT my_map;
    my_map["first"]=  11;
    my_map["second"]= 23;

    mapT::iterator  it= my_map.find("first");
    if( it != my_map.end() ) std::cout << "A: " << it->second << "\n";

    it= my_map.find("third");
    if( it != my_map.end() ) std::cout << "B: " << it->second << "\n";

    // Accessing a non-existing element creates it
    if( my_map["third"] == 42 ) std::cout << "Oha!\n";

    it= my_map.find("third");
    if( it != my_map.end() ) std::cout << "C: " << it->second << "\n";

    return 0;
}

Вывод:

A: 11
C: 0