Yapmaya çalıştığın şey mümkün. Derleyiciden önce çalışan ön işlemci (preprocessor) için makro yazman gerekiyor.
İlk önce tanımlayacağın değişkenleri makro olarak yazmalısın:
C++:
#define FULLSCREEN false
#define RESIZABLE false
Sonrasında bu değişkenleri birbiri ile karşılaştırabilirsin:
C++:
#if FULLSCREEN==RESIZABLE
#error "FULLSCREEN ile RESIZABLE aynı"
#endif
Eğer iki değişken aynı şekilde tanımlanmışsa, GCC hata vererek çıkar.
Son olarak makroda tanımladığın değişkenleri, C++ değişkenlerine ataman gerekiyor:
Kodu derlemeye çalıştığın zaman aşağıdaki hatayı alacaksın:
Kod:
$ g++ Main.cpp
In file included from Main.cpp:3:0:
PencereAc.h:7:3: error: #error "FULLSCREEN ile RESIZABLE aynı"
#error "FULLSCREEN ile RESIZABLE aynı"
^~~~~
Çözümü tam olarak anlayamadıysan, GCC'de ön işlemci ve makro konularını araştımanı öneririm.
Yapmaya çalıştığın şey mümkün. Derleyiciden önce çalışan ön işlemci (preprocessor) için makro yazman gerekiyor.
İlk önce tanımlayacağın değişkenleri makro olarak yazmalısın:
C++:
#define FULLSCREEN false
#define RESIZABLE false
Sonrasında bu değişkenleri birbiri ile karşılaştırabilirsin:
C++:
#if FULLSCREEN==RESIZABLE
#error "FULLSCREEN ile RESIZABLE aynı"
#endif
Eğer iki değişken aynı şekilde tanımlanmışsa, GCC hata vererek çıkar.
Son olarak makroda tanımladığın değişkenleri, C++ değişkenlerine ataman gerekiyor:
Kodu derlemeye çalıştığın zaman aşağıdaki hatayı alacaksın:
Kod:
$ g++ Main.cpp
In file included from Main.cpp:3:0:
PencereAc.h:7:3: error: #error "FULLSCREEN ile RESIZABLE aynı"
#error "FULLSCREEN ile RESIZABLE aynı"
^~~~~
Çözümü tam olarak anlayamadıysan, GCC'de ön işlemci ve makro konularını araştımanı öneririm.