Mam taki problem. Otóż planuję zrobić prostą gierkę (tak dla wprawy i nauki). I podczas dzielenia całości na poszczególne pliki pojawia się problem, ze jest ponowna definicja zmiennych mimo iż w każdym pliku nagłówkowym umieściłem strażnika nagłówka.
Całość składa się z plików: main.cpp, zmienne.h, P.h oraz P.cpp. Mają one następującą treść:
plik main.cpp
#include <allegro.h>
#include <alfont.h>
#include "zmienne.h"
#include "P.h"
using namespace std;
int main(){
allegro_init();
install_keyboard();
install_mouse();
set_color_depth(16); alfont_init();
set_gfx_mode(GFX_AUTODETECT_WINDOWED,800,600,0,0);
bufor=create_bitmap(800,600);
while(!key[KEY_ESC]){
}
alfont_exit();
destroy_bitmap(bufor);
allegro_exit();
}
END_OF_MAIN();
plik zmienne.h
#ifndef ZMIENNE_H
#define ZMIENNE_H
#include <allegro.h>
#include <alfont.h>
short pl;
short xx,yy;
BITMAP *bufor;
ALFONT_FONT *d;
#endif
plik P.h
#ifndef P_H
#define P_H
#include "zmienne.h"
void P001();
#endif
plik P.cpp
#include "P.h"
void P001(){}
No i podczas kompilacji wyskakuje błąd o multidefinicji wszystkich zmiennych z pliku zmienne.h
Znając siebie pewnie jakiś głupi prosty błąd zrobiłem ale jakoś niestety znalezienie go mi nie idzie ;/
Używam Dev'a 4.9.9.2
Z góry dzięki za pomoc