2011-01-23 6 views
4

で#endifの私は、MSDNからのサンプルコードを持っていると私は、コードの構文を見つけました#else,#endifの#if、#elseの、前に私は見たことがないC#のソースコード

#if InMemDBとは何ですか?

InMemDBとは何ですか?変数?

+0

他の答えが述べられているように、それらは.Net 4.0では新しくないので、C++の日以降に存在していたことを知る必要があります。 –

+0

彼はC/C++以降のプリプロセッサディレクティブが存在していると言っていますが、C#はC++に基づいているわけではありません。 – Amy

+0

@ジョイ、@ yodaj007が言っていることは正しいです、私はここで遺産を意味しませんでした。 –

答えて

14

これらは、preprocessor directivesと呼ばれ、.NET 1.0以降に存在します。それらはInMemDBのような異なるコンパイル指令を定義することを可能にし、コンパイラはこの変数が定義されているかどうか評価します。 #if directiveのドキュメントは、より詳細な概要を提供します。

alt text

1

:あなたは/defineコンパイラオプションを使用するか、Visual Studioでプロジェクトのプロパティのビルドタブで条件付きコンパイルシンボルにを使用することができ、変数を定義するために

これらはフレームワーク4の新機能ではありません

これは開発段階とテストに使用できる機能です: あなたは宣言できます:

#Define something 

、その後

#if something 

実行されます "場合" という点であるすべてのコード。 すべてのコードではありません。

関連する問題