#ifディレクティブ

C#にもプリプロセスがある・・・。
#ifディレクティブは、指定されたシンボルが定義されているときに、#endifまでのプログラムがコンパイル対象となる・・・。
C言語C++と違い、マクロの定義ができないので、マクロの値ではなく、シンボルが定義されているかどうかを評価する・・・。

TESTというシンボルが定義されていたら、Console.WriteLineで"Test"と出力する・・・。
そのまま、実行すると、

ABCDE
続行するには何かキーを押してください . . .

定義してないから、"Test"は出力されない・・・。

f:id:BG1:20170309124058p:plain

プロパティから、

f:id:BG1:20170309124131p:plain

[ビルド]の[条件付きコンパイルシンボル]にTESTを追加する・・・。

これで実行すると、

Test
ABCDE
続行するには何かキーを押してください . . .

シンボルが定義されているから、"Test"が出力された・・・。

Sample/cs/ifDirective/ifDirective/src/ifDirective at master · bg1bgst333/Sample · GitHub