プリプロセシングのマルチラインマクロ
を作成するのは簡単ですが、複数のラインに及ぶマクロを定義することになると、タスクは困難になるように思われます。この記事では、c/cにマルチラインマクロを作成するための包括的なソリューションを提供します。さらに、最後の線を除くマクロ内の各ラインは、ラインの継続エスケープキャラクターで終了する必要があります。この文字は、マクロ定義が次の行で続くことを意味します。たとえば、質問で指定されているように、新しいクラスを作成するマクロを定義するために、次の構文を使用できます。 {\ クラスX:Public Otherclass \ {\ int foo; \ void dofoo(); \ }; \ }
ню処べ
\文字がラインの最後の文字でなければならないことに注意することが重要です。 Whitespaceを含む他の文字が続いている場合、コンパイラはマクロの後続の各行の不可解なエラーメッセージを生成します。一般的に使用されているコードブロックを再利用可能な単位にカプセル化することにより、コードの読みやすさを向上させます。 {\ int temp =(a); \ (a)=(b); \ (b)=温度; \ }
このマクロは、2つの変数の値を便利に交換するために使用できます。 int a = 10、b = 20; //スワップマクロを呼び出して値を交換します スワップ(a、b); cout
#define someMacro(X) \
{ \
class X : public otherClass \
{ \
int foo; \
void doFoo(); \
}; \
}
マルチラインプリプロセッサマクロは、プログラム全体で再利用できる複雑なコードブロックを定義するための強力なメカニズムを提供します。適切な構文を採用し、微妙な哀しいアанersに準拠することにより、プログラマーはマルチラインマクロを活用してコードの保守性と読みやすさを高めることができます。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3