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

Что не так со статическими map-ами

23.05.2018, 20:46. Показов 639. Ответов 2
Метки нет (Все метки)

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
#include <iostream>
#include <map>
#include <string>
 
class someClass
{
public:
    static std::map<std::string, int> map;
    static void insert(std::string name, int value)
    {
        auto iter = someClass::map.find(name);
        if (iter != someClass::map.end())
            someClass::map.insert(std::pair<std::string, int>(name, value));
        else
            someClass::map[name] = value;
    }
};
 
int main()
{
    someClass::insert("a", 1);
    return 0;
}
если переместить код из статического класса в мейн - всё прекрасно работает, но если же так запустить, то ещё на этапе компиляции вылетает ошибка "неразрешённый внешний символ" и далее огромное кол-во не читаемого текста, что это и как это фиксить?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.05.2018, 20:46
Ответы с готовыми решениями:

TreeView с checkbox`ами и DBGrid c combobox`ами
Здравствуйте, посдкажите, пожалуйста, как реализовать checkbox`ы в компоненте TreeView и...

Работа с TextBox'ами Button'ами.
Народ киньте ссылку где это кратко и доступно описывает. Конкретнее как работать с тем что введено...

Map с поиском как по ключу, так и по значению
Реализовано ли подобное в stl? (или в boost, например) И как в теории выглядит эта реализация?...

Что лучше: динамические массивы, векторы, списки, map контейнеры или что-то ещё?
Привет всем! Помогите правильно алгоритм выбрать. Надо получать из файлов (около 8000 файлов)...

2
2848 / 1997 / 986
Регистрация: 21.12.2010
Сообщений: 3,705
Записей в блоге: 10
23.05.2018, 21:17 2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <map>
#include <string>
 
class someClass
{
public:
    static std::map<std::string, int> map;
    static void insert(std::string name, int value)
    {
        someClass::map[name] = value;
    }
};
 
std::map<std::string, int> someClass::map;
 
int main()
{
    someClass::insert("a", 1);
}
0
285 / 176 / 21
Регистрация: 16.02.2018
Сообщений: 666
24.05.2018, 20:26 3
Вот поэтому
Цитата Сообщение от http://eel.is/c++draft/basic.def#def:define
Each entity declared by a declaration is also defined by that declaration unless:

(2.3) — it declares a non-inline static data member in a class definition
1
24.05.2018, 20:26
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.05.2018, 20:26
Помогаю со студенческими работами здесь

Что не так с кодом? ( пытаюсь понять, что не так? )
Есть исходный код. Hook, работает хорошо, но есть минус огромный - перестаёт писать в лог, при...

Подсчитать, сколько чисел содержится одновременно как в первом списке, так и во втором (используя std::map)
Даны два списка чисел, которые могут содержать до 100000 чисел каждый. Посчитайте, сколько чисел...

Google map что за элемент
Как называется этот элемент? Можно-ли заставить его передвигаться (например задать свойство) по...

И так, что не так с моим запросом на добавление записи в таблицу?
$sql = 'INSERT INTO product ' . '(name, code, price, category_id, brand,...


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

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