Skip to main content

条件付き編集とは何ですか?

computerコンピュータープログラミングでは、条件付きコンパイルでは、ソフトウェアコンパイラまたはソースコードプロセッサが、コアプログラミング言語仕様の一部ではない言語固有の指示に基づいて、特定のコマンドまたはコードのブロックを含めるか無視する機能について説明します。プログラムの条件付きコンパイルをトリガーするために使用されるコマンドは、多くの場合、Preprocessorディレクティブと呼ばれますが、コンパイラディレクティブ、条件付きコメント、または条件付き定義としても知られています。使用されているコンパイラまたは言語に応じて、条件付きディレクティブはユーザー定義の変数またはマクロであるか、コンパイラまたはオペレーティングシステムによって設定されたシステム変数である場合もあります。条件付きコンパイルは、ソースファイルを交換または変更することなく、さまざまな環境またはオペレーティングシステムの下にコンパイルできるソースコードファイルの単一セットを構成するために頻繁に使用されます。ある言語から別の言語ですが、通常、通常のプログラム変数の範囲外のマクロまたは他のメタデータ式です。Cなどの言語では、変数は通常、前プロセッサによって読み取られるマクロです。ほとんどの場合、マクロは同じソースファイルに存在していても、実際の実行可能なプログラムソースコードからアクセスできません。 - それからステートメント。条件付き編集のために実行できる基本的なテストは、値が定義されていないかどうか、または場合によっては、2つの定義された変数が同等であるかどうかです。変数またはマクロ自体は、一般的に重要性の価値を保持しません。なぜなら、それらを定義する行為は、指令がチェックしているものであるからです。ただし、一部の言語とコンパイラでは、定義された変数の値がブール状態について評価される場合に重要です。。Trueの場合、指令に従っているコードは通常どおりコンパイルされます。それ以外の場合、コンパイラは指令に含まれるコードを完全にスキップします。これは、実行可能なプログラムコード自体内の条件付きロジックステートメントとは異なります。これは、ロジックに実行できないコードのブロックがある場合でも、ほとんどの場合解釈およびコンパイルされるからです。条件付きプリプロセッサディレクティブを使用すると、スキップオーバーコードが含まれたり、解釈されたり、コンパイルされたりすることはありません。また、プリプロセッサがすべての条件付き変数と指令を評価したら、コンパイラに方向性を提供することのみを目的としているため、プログラムの残りの部分にコンパイルされないことにも注意する必要があります。特定のオペレーティングシステムまたは環境に固有のコードを含めるまたは除外するために使用されます。これは、1つのオペレーティングシステムに存在するライブラリを、ディレクティブがプログラムがそのオペレーティングシステムの下でコンパイルされていると判断した場合、条件付きで含めることができることを意味します。あるいは、ディレクティブを使用して、ユーザー定義の変数に基づいてコードを含めるか除外することもできます。これを行うことができるため、デバッグまたはプロファイリングコードがプログラムの最終バージョンに含まれていないか、コードの個別のコピーを維持することなく特定の機能を有効または無効にすることができます。