![]() |
|
Модераторы: bsa |
![]()
|
|
| TheDestroyer |
|
||||||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 5.11.2007 Репутация: нет Всего: нет |
Помогите пожалуйста разобраться со следущей проблемой.
Есть структура, которая должна использоваться в нескольких .cpp файлах. В testapp.h файле определяю эту структуру и map, использующий ее. Надо чтобы этот map был виден в testapp.cpp и file2.cpp. Делаю так: testapp.h:
testapp.cpp:
file2.cpp:
Если я вставляю #include "testapp.h" в file2.cpp, то получаю ошибку:
т.е. многократное определение Если же я не вставляю #include "testapp.h" в file2.cpp, то info_struct невидна в нем. Как правильно объявить и использовать глобальные переменные в этом случае? |
||||||||
|
|||||||||
| Cheloveck |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1578 Регистрация: 26.7.2008 Где: Тула Репутация: 5 Всего: 32 |
-------------------- ![]() |
|||
|
||||
| TheDestroyer |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 5.11.2007 Репутация: нет Всего: нет |
Ругается не на отсутствие определения струтуры, а на переобъявление map-а.
Если не сложно поясните, плз. |
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 79 Всего: 250 |
в хидере: extern map <string,info_struct> login_info;
в одном из cpp : map <string,info_struct> login_info |
|||
|
||||
| zim22 |
|
|||
|
depict1 ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2682 Регистрация: 15.1.2009 Где: Украина Репутация: 29 Всего: 69 |
вы только объявляете login_info.
где вы его определяете?
|
|||
|
||||
| TheDestroyer |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 5.11.2007 Репутация: нет Всего: нет |
Спасибо, при объявлени глобальных переменных следует использовать "extern", при использовании в других файлах этих переменных их следует просто объявить еще раз, незабыв сделать include файла, в котором было объявление с "extern".
|
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 79 Всего: 250 |
||||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |