Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 01.12.2012
Сообщений: 40
1

Задание на map

07.12.2018, 16:33. Показов 326. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
C++
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
class A
 
{
 
public:
 
    int GetValueF(std::string sKey);
 
    int GetValueS(std::string sKey);
 
    
 
protected:
 
    std::map<std::string, std::pair<int, int>> mapValues;
 
};
 
 
int A::GetValueF(std::string sKey)
 
{
 
  auto it = mapValues.find(sKey);
 
  if (it != mapValues.end())
 
  {
 
    return it->second.first;
 
  }
 
  
 
  return 0;
 
}
 
int A::GetValueS(std::string sKey)
 
{
 
  auto it = mapValues.find(sKey);
 
  if (it != mapValues.end())
 
  {
 
    return it->second.second;
 
  }
 
  
 
  return 0;
 
}
и к примеру:

C++
1
2
3
4
5
A myClass;
 
std::string sKey = "abc";
 
printf("%s %d %d", strKey, myClass.GetValueF(sKey), myClass.GetValueS(sKey));
По ключу sKey выполняется поиск, итератор если не нашел то возвращает значение первого из пар, во втором возвращает вторую пару . Ну и иначе в обоих там 0.
Правильно ли описал код.
Вопрос еще такой, как можно улучшить код выше, добавить что то или удалить?
Заранее спасибо.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.12.2018, 16:33
Ответы с готовыми решениями:

Обращение к элементам vector, который находится в map, находящийся в map
Всем добрый день! Имеется такой контейнер. Как обращаться к элементам вектора и как пушбэчить...

Поместить вектора в map и реализовать перегрузку вывода для map
Всем привет! Нужна помощь в написании программы. У меня есть вот такая прога и мне нужно каким-то...

Обращение к map, который внутри другого map
std::map&lt;int, std::map&lt;std::string, int&gt;&gt; m1; std::map&lt;std::string, int&gt; m2; void main() {...

Возможно ли создать контейнер std::map, в котором в качестве значения была бы ссылка на std::map?
Здравствуйте. Возможно ли создать контейнер std::map, в котором в качестве значения была бы...

1
7793 / 6560 / 2984
Регистрация: 14.04.2014
Сообщений: 28,672
07.12.2018, 17:48 2
А ноль не может там храниться, что ли? Проще сразу возвращать pair.
0
07.12.2018, 17:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.12.2018, 17:48
Помогаю со студенческими работами здесь

Как вставить элемент и вывести элементы на экран в map<string, map<string,int>> ?
У меня есть map&lt;string, map&lt;string,int&gt;&gt;, в него надо добавить элементы (типа Ivanov potato 200)...

Как вставить map в map
есть такой map map &lt; INT64 , map &lt;INT64 , map&lt; wArray , int &gt; &gt; &gt; tMenu; как его заполнить?...

Emplace в std::map. Как добавить элемент в std::map без копирования?
здравствуйте... есть ли способ не писать так: std::map&lt;int, char&gt; ksa;...

Очистка map и перевернутого std::map c std::greater
Написала я программу, которая заполняет два контейнера map. a,b. вывод программы такой 11 a:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru