Jestem całkiem nowy w C++. Obecnie pracuję nad projektem grupowym i chcemy, aby nasze klasy były kompatybilne zarówno z komputerami laboratoryjnymi (Windows) i moim komputerem (Mac OS X).C++ #ifdef Pytanie Mac OS X
Oto co zostało umieszczenie na szczycie naszych plików:
#ifdef TARGET_OS_X
# include <GLUT/glut.h>
# include <OpenGL/OpenGL.h>
#elif defined _WIN32 || defined _WIN64
# include <GL\glut.h>
#endif
I realizować to pytanie zostało zadane wcześniej, ale moje pytania zostały dając mi sprzecznych odpowiedzi takie jak „_MAC”, „TARGET_MAC_OS "," MACINTOSH "itp. Jaka jest aktualna i prawidłowa deklaracja, aby umieścić w instrukcji #ifdef, aby była kompatybilna z Mac? W tej chwili nie działa.
Dziękujemy!
Oczywiście, '#ifdef __APPLE__' będzie wystarczające, jeśli OP nie jest kierowany na iOS. –
@ larsmans: Lepiej już teraz przepraszam. Jeśli użytkownik zdecyduje się uprościć, to na pewno :) – orlp
Definicja 'TARGET_OS_IPHONE' jest zdefiniowana dla Symulatora iOS, dlatego musisz przed nią wykonać test" TARGET_IPHONE_SIMULATOR ". * Również *, wszystkie trzy są zdefiniowane na platformach Apple'a - musisz przetestować pod względem wartości ('#if TARGET_OS_IPHOST' zamiast' #ifdef TARGET_OS_IPHONE'.) –