Tak opět zdravím, tohle už je snad jeden z mých posledních dotazů na nějakou dobu:
Dělám si to takhle jednou program v SDL. Jde o to že se hýbe kuličkou po obrazovce, přičemž na kuličku působí gravitace.
Takto vypadá struktura:
headers/global.h
headers/main.h
headers/functions.h
sources/main.cpp
sources/functions.cpp
Závislosti jsou následující:
main.h:
#include <stdio.h>
#include <string.h>
#include <SDL/SDL.h>
#include <SDL/SDL_image.h>
functions.h:
#include <stdio.h>
#include <string.h>
#include <SDL/SDL.h>
#include <SDL/SDL_image.h>
global.h:
nemá - zde jsou uloženy globální hodnoty
main.cpp:
#include "../headers/main.h" // V souboru main.h není nic důležitého pro ostatní soubory - jen to co je uvedeno výše...
#include "../headers/functions.h"
#include "../headers/global.h"
functions.cpp:
#include "../headers/functions.h"
#include "../headers/global.h"
Všechno by fungovalo, ale je tu jeden problém - pořád mi to píše, že různé proměnné a podobně (hlavně z global.h), jsou duplikátní. Myslím si že je to tím, že se global hodnoty includují do dvou .cpp souborů, ale je to tak nutné (pro tento program). Nevíte někdo co s tím udělat? Předem děkuji za odpovědi.
PS.: Samozřejmě všechny (!!) soubory .h mají ošetřené vkládání pomocí #ifndef, #define a #endif...