#DEFINE   otázka

C#

Ahoj.

Mohl by mi prosím někdo vysvětlit, k čemu slouží #DEFINE?

Hledal jsem na netu, ale nerozumím tomu...

#define NECO

#if NECo

#else

Díky

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

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).

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Děkuji za vyčerpávající odpověd ;-)

Jen ještě dotaz. Když tedy dokončím vývoj a testování aplikace, můžu to #DEFINE ze zrdrojového kódu smazat, bez ztráty funkčnosti?

Přesněji mě zajímá BUFFERED_SERIALIZATION

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Dotaz na stejnou věc z jiné IP adresy. To jste nepochopil mojí původní odpověď nebo co?!

http://vbnet.cz/forum-tema--4421-define....

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

očividně...

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback