|
32 / 4 / 0
Регистрация: 22.06.2011
Сообщений: 88
|
|||||||||||
std::map find. Получить ключ(элемент) и как записать все данные при объявлений?17.05.2012, 10:12. Показов 53945. Ответов 16
Метки нет (Все метки)
Вопрос первый:
как получить ключ контейнера map по данным? например:
Вопрос второй: Можно ли map инициализировать как простой массив?
0
|
|||||||||||
| 17.05.2012, 10:12 | |
|
Ответы с готовыми решениями:
16
Emplace в std::map. Как добавить элемент в std::map без копирования? Почему map.find не доработают для std::find Составной ключ для std::map |
|
670 / 198 / 29
Регистрация: 10.05.2012
Сообщений: 595
|
|
| 17.05.2012, 10:29 | |
|
1-й вопрос: Только идти по итераторам и делать It->second и проверять совпадает ли он с вашей строкой, тогда ответ it->first и никак иначе, в данной карте.
если уж, как вы говорите "грамотно" то map надо делать <string,int>, а не <int,string> в вашей задаче ![]() По итераторам идти очень долго, дольше чем O(n), а поиск в карте по ключам осуществляется за O(logn) Вопрос второй - нет, нельзя, да и не нужно
2
|
|
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
| 17.05.2012, 10:44 | |
|
Ternsip, 2) Можно. Читайте новый стандарт.
1
|
|
|
Форумчанин
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
||||||
| 17.05.2012, 10:47 | ||||||
|
как-то так
1
|
||||||
|
670 / 198 / 29
Регистрация: 10.05.2012
Сообщений: 595
|
|
| 17.05.2012, 10:57 | |
|
MrGluck, да, я про это, этот поиск идёт за O(logn),это хорошо, но вдруг vendeme нужен отсорт по индексам
?
0
|
|
|
Форумчанин
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|
| 17.05.2012, 10:59 | |
|
0
|
|
|
670 / 198 / 29
Регистрация: 10.05.2012
Сообщений: 595
|
||
| 17.05.2012, 11:04 | ||
|
Не по теме: :D Виноват, очепятка =), уже пофиксил :-[ осторт -> отсорт (сортировка)
0
|
||
|
32 / 4 / 0
Регистрация: 22.06.2011
Сообщений: 88
|
|||
| 17.05.2012, 11:37 [ТС] | |||
|
Добавлено через 2 минуты
0
|
|||
|
Higher
|
||
| 17.05.2012, 11:39 | ||
|
Тогда find возвращает итератор на свой конец, который нельзя разыменовывать, иначе может случится страшное(например, креш).
2
|
||
|
32 / 4 / 0
Регистрация: 22.06.2011
Сообщений: 88
|
|||||||||||
| 17.05.2012, 11:52 [ТС] | |||||||||||
|
я кажется кое что не понимаю с map.
Ведь first указывает на ключ, а second на данные.
Добавлено через 4 минуты ну верно, а почему тогда конструкция int id = bookMap.find("Pushkin")->second; не пашет? Добавлено через 1 минуту Вот общий код
0
|
|||||||||||
|
32 / 4 / 0
Регистрация: 22.06.2011
Сообщений: 88
|
|
| 17.05.2012, 11:59 [ТС] | |
|
Ну тогда я перепутал с контейнером, буду юзать старый дедовский многомерный массив
0
|
|
|
What a waste!
1610 / 1302 / 180
Регистрация: 21.04.2012
Сообщений: 2,733
|
||||||
| 17.05.2012, 14:05 | ||||||
|
Елси есть желание искать и по ключу, и по значению, и имеется boost, то там есть bimap:
А в std::map да, придётся перебирать все значения.
4
|
||||||
|
670 / 198 / 29
Регистрация: 10.05.2012
Сообщений: 595
|
|||||||||||||||||||||
| 18.05.2012, 12:14 | |||||||||||||||||||||
|
vendeme, А вы юморист
![]() Вы писали
Как нужно, если вам "наплевать" на порядок следования индексов (в итераторах) :
2
|
|||||||||||||||||||||
|
2 / 2 / 1
Регистрация: 06.10.2015
Сообщений: 91
|
|
| 20.02.2016, 12:01 | |
|
Ternsip, это пример для string int - все работает верно.
Я сейчас смотрю ассоциативный контейнер по string string и это не работает Добавлено через 1 минуту Подскажите кто знает как получить итератор по поиску string? Он по первому искать надо. Добавлено через 38 секунд Добавлено через 55 секунд разобрался
0
|
|
|
0 / 0 / 0
Регистрация: 25.03.2022
Сообщений: 1
|
||||||
| 27.03.2022, 16:50 | ||||||
0
|
||||||
| 27.03.2022, 16:50 | |
|
Помогаю со студенческими работами здесь
17
Std::map ключ из нескольких значений (одно из которых может быть не заполненно) Возможно ли создать контейнер std::map, в котором в качестве значения была бы ссылка на std::map?
std:: find Не нашла элемент
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|