C++ マクロの定義
C++のプリプロセッサマクロは、コンパイル前のソースコードにて置換や展開を行うプリプロセス指令のことである。マクロは#defineキーワードを用いて、識別子を文字列や式に置き換えることを定義する。ソースコード中でこの識別子が現れると、プリプロセッサはその識別子を置き換える文字列や式に変換する。
マクロ定義は、定数を定義したり、コードを簡略化したり、条件付きコンパイルを実装したりするために使用できます。例:マクロ定義を使用して定数を定義します。
#define PI 3.14159
その後にコード内においてPIを使用すれば3.14159を表すことが可能になります。また、マクロ定義はコードを簡略化するために用いることもできます。例えば、平方根を計算するためのマクロを定義します。
#define SQUARE(x) ((x) * (x))
それにより、 SQUARE (5) は 25 を表すことができ、マクロ定義はそれを ((5) * (5)) に置き換えます。
マクロ定義は単純な置換機構であり、型検査やスコープの制約がないので、使用の際には予期しない置換や副作用が生じないように慎重に検討する必要があることに注意してください。