1

C/C++コンパイラ(プリプロセッサではない) は、コマンドラインで定義されたマクロを重要なものと見なすことがありますか? この質問には、ユーザー定義のマクロとよく知られた (コンパイラまたはシステム固有の) マクロの両方が含まれます。

(私はコンパイラ スイッチについて尋ねているのではなく、コマンド ラインでの SINGLE switch-to-define-macros についてのみ質問しています。)

たとえば、すでに を に「前処理」してmyfile.cppから、myfile.iそれを にコンパイルしたい場合myfile.i、コマンドラインで==>の「マクロ」を定義する必要があるのmyfile.obj/myfile.oは理にかなっていますか?-Dmacromyfile.imyfile.obj/myfile.o

同様に、リンカは(どこでも定義された) マクロを重要なものと見なすことはありますか?

4

1 に答える 1

3

はい。

一部のデバッグ形式では、プリプロセッサの定義が記録されるため、デバッガ内からアクセスできます。

(しかし、プリプロセッサフ​​ラグを受け入れるリンカは知りません。)

于 2012-04-24T00:30:46.200 に答える