Dobrý večer, Slúži to na dynamickú kompiláciu kódu. To #if NECO .. #else .. #endif označuje blok kódu, ktorý sa skompiluje, ak je NECO definované, resp. ak nie je. Typický príklad je, keď chcete skompilovať iný kód pre režim Debug a iný pre režim Release, resp. keď chcete časť kódu skompilovať len v jednom s týchto režimov. #define definuje to, čo zadávate do #if Označenia, ktoré poskytuje VS sú napr. DEBUG, TRACE ale sú aj iné... Napríklad v XNA(je to len z hlavy takže asi v tom budú chyby):
#if DEBUG
graphics.PrefferedBackBufferWidth = 640;
graphics.PrefferedBackBufferHeight = 480;
graphics.IsFullscreen = false;
#else
graphics.PrefferedBackBufferWidth = 1920;
graphics.PrefferedBackBufferHeight = 1080;
graphics.IsFullscreen = true;
#endif
Zapríčiní, že ak kód ladíte, tak hra nabehne ako okno s veľkosťou 640x480, a ak to už idete distribuovať, tak nabehne vo fullscreene v rozlíšení 1920x1080(t.j. Full HD).
|