}
}
ΠΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ.
ΠΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ.
ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΠΏΡΠΎΠ±Π½ΠΎΠΉ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ.
ΠΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π²ΠΎ Π²ΡΠ΅Ρ Π²Π΅ΡΡΠΈΡΡ .
Π Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ Π΄Π²Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ°: EXPERIMENTAL ΠΈ TRIAL. ΠΡΠΎΡΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ Π²ΡΠ·ΠΎΠ² ΠΌΠ΅ΡΠΎΠ΄Π° WriteLine(), ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π»ΠΈΡΡ Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ ΠΎΠ±Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ°.
ΠΠ»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ΄Π° Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠΌ !, ΠΊΠ°ΠΊ Π² ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ΅.
#if !EXPERIMENTAL
Console.WriteLine("ΠΡΠΎΡ ΠΊΠΎΠ΄ Π½Π΅ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠΉ!");
#endif
ΠΡΠ·ΠΎΠ² ΠΌΠ΅ΡΠΎΠ΄Π° Π±ΡΠ΄Π΅Ρ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ EXPERIMENTAL Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½.
ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° #else Π΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΡΡΠ»ΠΎΠ²Π½ΠΎΠΌΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ else ΡΠ·ΡΠΊΠ° Π‘#, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠΉ Ρ ΠΎΠ΄ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π΅ΡΠ»ΠΈ ΡΡΠΎΠ³ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠ΄Π΅Π»Π°ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° #if. Π‘ ΡΡΠ΅ΡΠΎΠΌ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #else ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ.
// ΠΡΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #else.
#define EXPERIMENTAL
using System;
class Test {
static void Main() {
#if EXPERIMENTAL
Console.WriteLine("ΠΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ.");
#else
Console.WriteLine("ΠΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ.");
#endif
#if EXPERIMENTAL && TRIAL
Console.Error.WriteLine("ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΠΏΡΠΎΠ±Π½ΠΎΠΉ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ.");
#else
Console.Error.WriteLine("ΠΡΠΎ Π½Π΅ ΠΏΡΠΎΠ±Π½Π°Ρ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΡ.");
#endif
Console.WriteLine("ΠΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π²ΠΎ Π²ΡΠ΅Ρ Π²Π΅ΡΡΠΈΡΡ .");
}
}
ΠΠΎΡ ΠΊ ΠΊΠ°ΠΊΠΎΠΌΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΡΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
ΠΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ.
ΠΡΠΎ Π½Π΅ ΠΏΡΠΎΠ±Π½Π°Ρ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΡ.
ΠΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π²ΠΎ Π²ΡΠ΅Ρ Π²Π΅ΡΡΠΈΡΡ .
Π Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ TRIAL Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½, ΠΈ ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ°ΡΡΡ #else Π²ΡΠΎΡΠΎΠΉ ΡΡΠ»ΠΎΠ²Π½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΊΠΎΠ΄Π° Π½Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΠΎ, ΡΡΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° #else ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΊΠΎΠ½Π΅Ρ Π±Π»ΠΎΠΊΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #if ΠΈ Π² ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ β Π½Π°ΡΠ°Π»ΠΎ Π±Π»ΠΎΠΊΠ° ΡΠ°ΠΌΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #else. ΠΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΡΠΎΠΌΡ, ΡΡΠΎ Ρ Π»ΡΠ±ΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²ΠΎΠΉ #if ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ²ΡΠ·Π°Π½Π° ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° #endif. ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, Ρ Π»ΡΠ±ΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²ΠΎΠΉ #if ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ²ΡΠ·Π°Π½Π° ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° #else.
ΠΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΠ΅ #elif ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ "ΠΈΠ½Π°ΡΠ΅ Π΅ΡΠ»ΠΈ", Π° ΡΠ°ΠΌΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° #elif ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΡΠ»ΠΎΠ²Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ if-else-if Π΄Π»Ρ ΠΌΠ½ΠΎΠ³ΠΎΠ²Π°ΡΠΈΠ°Π½ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ. ΠΠΎΡΠ»Π΅ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #elif ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅. ΠΡΠ»ΠΈ ΡΡΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΡΠΈΠ½Π½ΠΎ, ΡΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π΄Π°Π»Π΅Π΅ ΠΊΠΎΠ΄ΠΎΠ²ΡΠΉ Π±Π»ΠΎΠΊ, Π° ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #elif Π½Π΅ ΠΏΡΠΎΠ²Π΅ΡΡΡΡΡΡ. Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΠΎ ΠΏΠΎΡΡΠ΄ΠΊΡ Π±Π»ΠΎΠΊ. ΠΡΠ»ΠΈ ΠΆΠ΅ Π½ΠΈ ΠΎΠ΄Π½Ρ ΠΈΠ· Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ² #elif Π½Π΅ ΡΠ΄Π°Π΅ΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ, ΡΠΎ ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #else Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΊΠΎΠ΄Π°, ΡΠ²ΡΠ·Π°Π½Π½Π°Ρ Ρ ΡΡΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²ΠΎΠΉ, Π° ΠΈΠ½Π°ΡΠ΅ Π½Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΊΠΎΠ΄ΠΎΠ²ΡΡ Π±Π»ΠΎΠΊΠΎΠ² Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #if. ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΠΎΠ±ΡΠ°Ρ ΡΠΎΡΠΌΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #elif.
#if ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ½ΠΎΠ΅_Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅
ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ²
#elif ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ½ΠΎΠ΅_Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅
ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ²
#elif ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ½ΠΎΠ΅_Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅
ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² // . . .
#endif
Π ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅ΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #elif.
// ΠΡΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #elif.
#define RELEASE
using System;
class Test {
static void Main() {
#if EXPERIMENTAL
Console.WriteLine("ΠΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ.");
#elif RELEASE
Console.WriteLine("ΠΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ.");
#else
Console.WriteLine("ΠΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π΄Π»Ρ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ.");
#endif
#if TRIAL && !RELEASE
Console.WriteLine("ΠΡΠΎΠ±Π½Π°Ρ Π²Π΅ΡΡΠΈΡ. ") ;
#endif
Console.WriteLine("ΠΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π²ΠΎ Π²ΡΠ΅Ρ Π²Π΅ΡΡΠΈΡΡ .");
}
}
ΠΡΠΎΡ ΠΊΠΎΠ΄ Π²ΡΠ΄Π°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ.
ΠΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ.
ΠΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π²ΠΎ Π²ΡΠ΅Ρ Π²Π΅ΡΡΠΈΡΡ .
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #undef ΡΠ΄Π°Π»ΡΠ΅ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΡΠ°Π½Π΅Π΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ. ΠΡΠΎ, ΠΏΠΎ ΡΡΡΠ΅ΡΡΠ²Ρ, ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΎΠ½ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ "Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ". ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΠΎΠ±ΡΠ°Ρ ΡΠΎΡΠΌΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #undef.
#undef ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄Π°.
#define SMALL
#if SMALL
// . . .
#undef SMALL
// ΡΠ΅ΠΏΠ΅ΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ SMALL Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½.
ΠΠΎΡΠ»Π΅ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #undef ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ SMALL ΡΠΆΠ΅ ΠΎΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ.
ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° #undef ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π³Π»Π°Π²Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π΄Π»Ρ Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ² ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠ΅Ρ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°Ρ ΠΊΠΎΠ΄Π°, Π² ΠΊΠΎΡΠΎΡΡΡ ΠΎΠ½ΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠ΅Π±ΡΡΡΡΡ.
ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° #error Π²ΡΠ½ΡΠΆΠ΄Π°Π΅Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΏΡΠ΅ΡΠ²Π°ΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ. ΠΠ½Π° ΡΠ»ΡΠΆΠΈΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ Π΄Π»Ρ ΠΎΡΠ»Π°Π΄ΠΊΠΈ. ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΠΎΠ±ΡΠ°Ρ ΡΠΎΡΠΌΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #error.
#Π΅rror ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅_ΠΎΠ±_ΠΎΡΠΈΠ±ΠΊΠ΅
ΠΠΎΠ³Π΄Π° Π² ΠΊΠΎΠ΄Π΅ Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° terror, Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ ΡΡΡΠΎΠΊΠ° ΠΊΠΎΠ΄Π°
#Π΅rror ΠΡΠΎ ΡΠ΅ΡΡΠΎΠ²Π°Ρ ΠΎΡΠΈΠ±ΠΊΠ°!
ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΏΡΠ΅ΡΡΠ²Π°Π΅ΡΡΡ ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ "ΠΡΠΎ ΡΠ΅ΡΡΠΎΠ²Π°Ρ ΠΎΡΠΈΠ±ΠΊΠ° ! ".
ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° #warning Π΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π΅ #error, Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΎΠ½Π° Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅, Π° Π½Π΅ ΠΎΡΠΈΠ±ΠΊΡ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ Π½Π΅ ΠΏΡΠ΅ΡΡΠ²Π°Π΅ΡΡΡ. ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΠΎΠ±ΡΠ°Ρ ΡΠΎΡΠΌΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #warning.
#warning ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π°ΡΡΠ΅Π΅_ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅
ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° #line Π·Π°Π΄Π°Π΅Ρ Π½ΠΎΠΌΠ΅Ρ ΡΡΡΠΎΠΊΠΈ ΠΈ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π³ΠΎ ΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ. ΠΠΎΠΌΠ΅Ρ ΡΡΡΠΎΠΊΠΈ ΠΈ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΏΡΠΈ Π²ΡΠ²ΠΎΠ΄Π΅ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈΠ»ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΉ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ. ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΠΎΠ±ΡΠ°Ρ ΡΠΎΡΠΌΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #line.
#line Π½ΠΎΠΌΠ΅Ρ βΠΈΠΌΡ_ΡΠ°ΠΉΠ»Π°"
ΠΠΌΠ΅ΡΡΡΡ Π΅ΡΠ΅ Π΄Π²Π° Π²Π°ΡΠΈΠ°Π½ΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #line. Π ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΈΠ· Π½ΠΈΡ ΠΎΠ½Π° ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Ρ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΡΠ»ΠΎΠ²ΠΎΠΌ default, ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°ΡΡΠΈΠΌ Π²ΠΎΠ·Π²ΡΠ°Ρ Π½ΡΠΌΠ΅ΡΠ°ΡΠΈΠΈ ΡΡΡΠΎΠΊ Π² ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅, ΠΊΠ°ΠΊ Π² ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ΅.
#line default
Π Π²ΠΎ Π²ΡΠΎΡΠΎΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° #line ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Ρ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΡΠ»ΠΎΠ²ΠΎΠΌ hidden. ΠΡΠΈ ΠΏΠΎΡΠ°Π³ΠΎΠ²ΠΎΠΉ ΠΎΡΠ»Π°Π΄ΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΡΡΠΎΠΊΠΈ ΠΊΠΎΠ΄Π°, Π½Π°Ρ ΠΎΠ΄ΡΡΠΈΠ΅ΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²ΠΎΠΉ
#line hidden
ΠΈ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²ΠΎΠΉ #line Π±Π΅Π· ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π° hidden, ΠΏΡΠΎΠΏΡΡΠΊΠ°ΡΡΡΡ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊΠΎΠΌ.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ² #region ΠΈ #endregion ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΠΎΠ±Π»Π°ΡΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ°Π·Π²ΠΎΡΠ°ΡΠΈΠ²Π°Π΅ΡΡΡ ΠΈΠ»ΠΈ ΡΠ²ΠΎΡΠ°ΡΠΈΠ²Π°Π΅ΡΡΡ ΠΏΡΠΈ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π² ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Visual Studio. ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΠΎΠ±ΡΠ°Ρ ΡΠΎΡΠΌΠ° ΡΡΠΈΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²:
#region ΡΠ΅ΠΊΡΡ
// ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΊΠΎΠ΄Π°
#endregion ΡΠ΅ΠΊΡΡ
Π³Π΄Π΅ ΡΠ΅ΠΊΡΡ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΡ ΡΡΡΠΎΠΊΡ.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #pragma ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π·Π°Π΄Π°ΡΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ Π² Π²ΠΈΠ΄Π΅ ΠΎΠΏΡΠΈΠΉ. ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΠΎΠ±ΡΠ°Ρ ΡΠΎΡΠΌΠ° ΡΡΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ:
#pragma ΠΎΠΏΡΠΈΡ
Π³Π΄Π΅ ΠΎΠΏΡΠΈΡ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ, ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ.
Π ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠΈ C# ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Ρ Π΄Π²Π΅ ΠΎΠΏΡΠΈΠΈ Π΄Π»Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ #pragma. ΠΠ΅ΡΠ²Π°Ρ ΠΈΠ· Π½ΠΈΡ , warning, ΡΠ»ΡΠΆΠΈΡ Π΄Π»Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π·Π°ΠΏΡΠ΅ΡΠ° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΉ ΡΠΎ ΡΡΠΎΡΠΎΠ½Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°. ΠΠ½Π° ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π΄Π²Π΅ ΡΠΎΡΠΌΡ: