Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.06.29;
Скачать: CL | DM;

Вниз

Помогите справится с MSVC++ проектом   Найти похожие ветки 

 
@!!ex ©   (2008-05-15 18:24) [0]

Есть файлик Data.h
#ifndef __DATA_H__
#define __DATA_H__

#include "d3d9.h"
#include "uEnvironment.h"

const RT_UNKNOWN  = 0;
const RT_OPENGL   = 1;
const RT_DIRECTX9 = 2;

LPDIRECT3DDEVICE9 bspDirect3DDevice;

POINT DefaultMousePos;
POINT *MousePos = &DefaultMousePos;

BOOL DefaultKeyStates[256];
BOOL *KeyStates = &DefaultKeyStates[0];

int RenderType;

cEnvironment* Environment;
#endif //__DATA_H__

Он подключается в куче разных мест.
В итоге линкер ругается, что данные определены несколько раз. почему??
>>bsEngine error LNK2005: "int * DefaultKeyStates" (?DefaultKeyStates@@3PAHA) already defined in GAPI.obj
И такие ошибки для всего, что определено в Data.h
Почему??
Ведь он должен подключаться только один раз!


 
ketmar ©   (2008-05-15 19:12) [1]

>[0] @!!ex © (2008-05-15 18:24:00)
потому что extern BOOL ...

ты сначала в хидере переменную завёл (один раз), потом в файле реализации (второй раз). линкер удивился.

---
Understanding is not required. Only obedience.


 
@!!ex ©   (2008-05-15 19:23) [2]

> [1] ketmar ©   (15.05.08 19:12)

Спасибо! Разобрался.
Сто лет не описывал переменные в хедере. Забыл про extern совсем.


 
DiamondShark ©   (2008-05-16 12:19) [3]

Вот что отсутствие модульности с языками делает.



Страницы: 1 вся ветка

Текущий архив: 2008.06.29;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
3-1201027383
Ega23
2008-01-22 21:43
2008.06.29
ISQL в FireBird - передать скрипт и получить результат


6-1189675577
Дмитрий2007
2007-09-13 13:26
2008.06.29
TClientSocket и потеря ресурсов Windows


15-1211107449
@!!ex
2008-05-18 14:44
2008.06.29
Подсветка синтаксиса в MSVS 7.1 C++


2-1212522851
DJ_UZer
2008-06-03 23:54
2008.06.29
Color To Html


15-1210936135
Kolan
2008-05-16 15:08
2008.06.29
SQLite не может получить доступ на Висте, почему?