C#プリプロセッサディレクティブとは何ですか?
プリプロセッサディレクティブは、実際のコンパイルが開始される前に情報を前処理するようにコンパイラに指示します。
すべてのプリプロセッサディレクティブは#で始まり、行のプリプロセッサディレクティブの前に空白文字のみを表示できます。プリプロセッサディレクティブはステートメントではないため、セミコロン(;)で終わりません。
以下は、C#のプリプロセッサディレクティブの一部です。
Sr.No | |
---|---|
1 | #define シンボルと呼ばれる文字のシーケンスを定義します。 |
2 | #undef シンボルの定義を解除できます。 |
3 | #if 1つまたは複数のシンボルをテストして、それらがtrueと評価されるかどうかを確認できます。 |
4 | #else #ifとともに、複合条件ディレクティブを作成できます。 |
5 | #elif 複合条件付きディレクティブを作成できます。 |
6 | #endif 条件付きディレクティブの終了を指定します。 |
7 | #line これにより、コンパイラの行番号と(オプションで)エラーと警告のために出力されるファイル名を変更できます。 |
8 | #error これにより、コード内の特定の場所からエラーを生成できます。 |
文字のシーケンスを定義する#defineプリプロセッサの例を見てみましょう。
例
#define PI using System; namespace PreprocessorDAppl { class Program { static void Main(string[] args) { #if (PI) Console.WriteLine("PI is defined"); #else Console.WriteLine("PI is not defined"); #endif Console.ReadKey(); } } }
出力
PI is defined
-
C#の条件付きプリプロセッサディレクティブとは何ですか?
#ifディレクティブを使用して、条件付きディレクティブを作成します。条件付きディレクティブは、1つまたは複数のシンボルをテストして、それらがtrueと評価されるかどうかを確認するのに役立ちます。それらがtrueと評価された場合、コンパイラは#ifと次のディレクティブの間のすべてのコードを評価します。 構文は次のとおりです- #if symbol [operator symbol]... ここでは、記号 テストするシンボルの名前です。 trueとfalseを使用するか、記号の前に否定演算子を付けることもできます。 演算子記号 シンボルの評価に使用される演算子です。演算子は次のいずれかになり
-
C#の名前空間とは何ですか?
名前空間は、ある名前のセットを別の名前のセットから分離する方法を提供するためのものです。名前空間の定義は、次のように、キーワードnamespaceで始まり、その後に名前空間名が続きます- namespace namespace_name { // code declarations } 名前空間を定義する- namespace namespace_name { // code declarations } 以下は、C#で名前空間を使用する方法を示す例です- 例 using System; namespace first_space {