これは簡単な質問だと思うので、私は何かが明らかでないと思います。私は実際にプリプロセッサディレクティブを使用することはありませんが、私は誰かのコードを見ていました。プリプロセッサディレクティブを.netで使用するのはいつですか?
だから私はそれがコードがあるMSDNの例hereを見て:
#define DEBUG
// ...
#if DEBUG
Console.WriteLine("Debug version");
#endif
を私の二つの質問があります:彼らはDEBUGを定義しない理由上記の例では
- ?私はあなたがデバッグ対リリースモードでコンパイルすると設定された印象の下にいたのですか?
#define MYTEST
を持っている他の例を見て、それが定義されているかどうかによってコンソールに書き込みますが、これは単に変数を使うこととどのように違いますか?私はここで何が欠けていますか?
[MSDNはそれらを「プリプロセッサディレクティブ」と呼んでいます。](http://msdn.microsoft.com/en-us/library/ed8yd1ha.aspx) –
しかし、そうではありません。同じ記事:* "コンパイラには別のプリプロセッサがありません" *。 – cdhowie
より正確に言えば、*条件付きコンパイルシンボル*です。 C++で見られるものと似ていますが、C#コンパイラには別のプリプロセッサはありません。 (http://blogs.msdn.com/b/csharpfaq/archive/2004/03/09/86979.aspx) –