c / c ++では、次のようなことを行うことは可能ですか?
#define (_asm int 3;) (exit(1))
そのため、私のコードのどこでも、この行はコンパイル時に置き換えられます。私はこれが悪い習慣であることを知っていますが、それは可能です。
乾杯
グローバル検索を実行し、選択したプログラミングエディタ(またはIDE)に置き換えて、_asm int 3
たとえばに変更してから、次のようなFOO
マクロを定義できます。FOO
#if 1 // <<<- change this test to determine how `FOO` is expanded
#define FOO _asm int 3
#else
#define FOO exit(1)
#endif
いいえ、これは有効なプリプロセッサシンボルではないため、機能しません。
もちろん、外部ツール(またはエディターの検索および置換機能)を使用することで、この置換を簡単に行うことができます。