Форум программистов, компьютерный форум CyberForum.ru

STL(map). Где инициализировать массив? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Vector and string http://www.cyberforum.ru/cpp-beginners/thread1157946.html
#include <vector> #include <iostream> using namespace std; int main(void) { vector<string> v(10); string st; int max = 1;
C++ Создание односвязного циклического списка Структура есть: struct Node { int item; Node*next; }; Как создать вершину и как потом в цикле создавать остальные узлы? http://www.cyberforum.ru/cpp-beginners/thread1157943.html
C++ Условие с двоеточием. Тернарная условная операция
Все здрасьте. Где то я видел очень полезную вещь, но не могу вспомнить как правильно использовать. Там был пример с двоеточием, вот типо этого: int main() { bool result; int i = 5; int b = 6;
C++ Построение параболы
Здравствуйте. Необходимо построить параболу, удовлетворяющую уравнению: y=a*x^2+b*x+c Я составил программу (приведена ниже), но в итоге проходит построение не всей параболы, а одной ее ветви: Парабола Есть еще одна проблема - парабола строится не из центра, а с левого края. Плюс она получается перевернутой. Вообще не могу понять, почему так происходит. Очень надеюсь на вашу помощь:) Вот...
C++ Объяснить действия условных операторов if http://www.cyberforum.ru/cpp-beginners/thread1157928.html
Изучаю с++ , попался код, не понимаю некоторых if. Обьясните пожалуйста. 1) if (avto) // это я так понимаю, if avto != null 2) if (!avto) // это что?) 3)if (rand ()%6>rand ()%24 )// т.е если случайное число из диапазона от 0 до 6 больше чем число из диапазона от 0 до 24, то .. Верно?
C++ Конструктор и оператор new Всем здрасьте. есть класс: class A { public: A(); ~A(); private: int num; подробнее

Показать сообщение отдельно
QrugeE
0 / 0 / 0
Регистрация: 16.10.2012
Сообщений: 33
26.04.2014, 14:04     STL(map). Где инициализировать массив?
Для начала: не получалось данную тему назвать более логично, сайт не пропускал

Добрый день.
Имеется:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
map<int, string> AutoBrands;
map<int, string> AutoBrandsModels[20];
map<int, string> AutoColors;
//например
AutoBrands[1] = "Alfa Romeo";
//.........
AutoBrands[19] = "Volvo";
//.............
AutoBrandsModels[1][1]="146";
//.........
AutoBrandsModels[1][4]="166";
//..
AutoBrandsModels[19][1]="S60";
//...
AutoBrandsModels[19][5]="XC90";
//...
AutoColors[1]="aqua";
//....
AutoColors[20]="yellow green";
Также есть класс, который использует массивы, но это не суть.
C++
1
2
3
4
5
6
7
8
9
class avto
{
int id;
int brand;
int model;
int color;  
public:
//методы
}
Также имеются функции вне main, которые используют данные ассоциативные массивы.
Сами функции же используются в main(){}.

Проблема в том, что данные этих ассоциативных массивов должны быть глобальными, то есть объявляться и инициализироваться вне функций.
Когда я это делаю после подключения библиотек, то выдает ошибки:
"Объявление не содержит класс хранения или спецификатор типа"
"Для агрегатного объекта требуется инициализация с исп. "{...}" "
C2040
C2369

Когда я инициализирую ассоциативные массивы в функциях, то проблем, естественно, нет.
Но громоздко и нелогично, в каждой ф-ции прописывать это.
Подскажите, пожалуйста, как исправить проблемы?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 20:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru