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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Van111
кодер с++
208 / 187 / 4
Регистрация: 03.08.2011
Сообщений: 2,587
Записей в блоге: 12
#1

Несколько cpp модулей - C++

15.11.2012, 19:27. Просмотров 531. Ответов 5
Метки нет (Все метки)

разрабатывая один проект наталкнулся на такую фичу/баг

C++
1
2
unit1.h
int al;
C++
1
2
3
4
5
6
7
8
9
unit1.cpp
#include "windows.h"
#include "unit1.h" 
 
//Дальше все стандартно за исключением того, что заполняется структурка DEVMODE и устанавливаются DisplaySettings 
int WINAPI WinMain( HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmd, int nShowCmd)
{
    return 0;
}
C++
1
2
3
unit2.cpp
#include "unit1.h"
extern int al;
1>unit2.obj : error LNK2005: "int al" (?al@@3HA) уже определен в unit1.obj
1>C:\Projects\test1\Debug\test1.exe : fatal error LNK1169: обнаружен многократно определенный символ - один или более


архангельский пишет что на борланде можно выкрутится через extern int al;
но на MVC 2010 это не помогло , что делать(этот код я взял для примера, чтоб не морочить вам головы своим проектом)
заранее огромное спасибо, извените за орфографические ошибки
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.11.2012, 19:27     Несколько cpp модулей
Посмотрите здесь:

Подключение .h в несколько .cpp - C++
всем доброго времени суток решил написать несколько простеньких консольных игрушек. и решил использовать пространства имён, заголовочные...

Несколько *.cpp и глобальные переменные - C++
Всем привет! Есть несколько *.cpp файлов, к которым подключен один *.h файл. В *.h файле объявлены глобальные переменные, работа с...

Несколько cpp файлов в проекте - C++
Доброго времени суток ! Есть проект и в нем 2 cpp файла: Main.cpp и BinaryNumber.cpp В последнем файле создан класс и его методы....

Несколько *.cpp в одном проекте - C++
Добрый день! В приложении требуется несколько *.cpp как выполнить код каждой *.cpp ?

Как разбить код на несколько *.CPP* - C++
Как разбить код на несколько *.CPP* Добрый вечер - при изучении языка С где то в литературе видемо упустил такую информацию и не где...

Несколько модулей с одним пространством имен - C++
Хочу сделать несколько модулей ,с разными пространствами имен .Но ,чтобы при этом они бы ли в одном более общем пространстве имен ...

Как соединить несколько модулей с помощью #include? - C++
Очередная тема из разряда "просвети нуба" ;) Допустим, у меня есть три отдельных модуля, скажем main, ref1 и ref2. Отсюда получается 6...

Подключение дополнительных модулей и работа с функциями из этих модулей - C++
Опять с вопросами после частично прочитанной книги "C++ Для Чайников". ) Сейчас пытаюсь понять как работает подключение дополнительных...

.h и .cpp - C++
В общем написал небольшой шаблонный механизм, который собираюсь неоднократно юзать в будущем. По файликам расфасовал его как надо, однако...

Файлы .cpp и .h - C++
Добрый день! Подскажите, пожалуйста, как в программу добавить файлы .cpp и .h? Эти файлы уже написаны и их осталось только подключить к...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
castaway
Эксперт С++
4880 / 3016 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
15.11.2012, 19:33     Несколько cpp модулей #2
У тебя наоборот, в заголовочном файле надо описать её как extern, а определить в одном модуле.
Van111
кодер с++
208 / 187 / 4
Регистрация: 03.08.2011
Сообщений: 2,587
Записей в блоге: 12
15.11.2012, 19:38  [ТС]     Несколько cpp модулей #3
Цитата Сообщение от lazybiz Посмотреть сообщение
У тебя наоборот, в заголовочном файле надо описать её как extern, а определить в одном модуле.
спасибо, а она будет глобальной ?

Добавлено через 50 секунд
то есть - не статической ?
castaway
Эксперт С++
4880 / 3016 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
15.11.2012, 19:51     Несколько cpp модулей #4
Глобальной.
Van111
кодер с++
208 / 187 / 4
Регистрация: 03.08.2011
Сообщений: 2,587
Записей в блоге: 12
15.11.2012, 20:45  [ТС]     Несколько cpp модулей #5
а почему не получилось сделать так
класс камера
C++
1
Tcamera_system camera_system;
модуль 1
C++
1
//...............-----------
модуль 2(game_unit.cpp)
C++
1
extern Tcamera_system camera_system;
выводит
>main.obj : error LNK2005: "struct Tcamera_system camera_system" (?camera_system@@3UTcamera_system@@A) уже определен в game unit.obj

Добавлено через 17 минут
всё разобрался надо Tcamera_system camera_system; и extern Tcamera_system camera_system;
местами поменять
Evg
Эксперт CАвтор FAQ
17462 / 5700 / 361
Регистрация: 30.03.2009
Сообщений: 15,639
Записей в блоге: 26
15.11.2012, 20:48     Несколько cpp модулей #6
На всякий случай
Для чего нужен define?
Yandex
Объявления
15.11.2012, 20:48     Несколько cpp модулей
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru