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

std::map::find

Материал из cppreference.com
< cpp‎ | container‎ | map

 
 
 
std::map
Функции элементы
Доступ к элементам
Итераторы
Ёмкость
Модификаторы
(C++17)
Просмотр
map::find
Наблюдатели
Функции, не являющиеся элементами
(C++20)
(до C++20)(до C++20)(до C++20)(до C++20)(до C++20)(C++20)
Принципы вывода (C++17)
 
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