質問

14の

進化WG問題の一覧2004年2月を持っている...

  

EP003。 #nomacros。 EI001を参照してください。によって注意   Stroustrup氏書き込まれる。

粗い(または正確な)面では、#nomacrosものであり、それはどこでも拡張機能として提供されて?これは、プリプロセッサにコードを実行し、驚きパッケージの.iのファイルを調べる代わりに比べ、2005コンパイラに1995ヴィンテージC ++のファイルの移植数千人を含む最近のプロジェクトに有用な診断ツールされていると思います。

役に立ちましたか?

解決

これは、C ++に含めるためのアクティブ検討中のただの提案が、現在のコンパイラではまだ利用できません。ページのさらに下読めば、それは言います:

ES042。 #nospamます。

の範囲に入ると出マクロを制限するためのプリプロセッサのメカニズムを提供します。たとえばます:

#nomacros
#in A B
…
#out A X
#endnomacros
明示的#INで有効になっていない限り、

いいえマクロは#nomacrosと#endnomacrosの間で展開されていません。明示的#outで有効になっていない限り#nomacrosと#endnomacrosの間で定義されたマクロは#endnomacros後に定義されていないされます。

ビャーネ・ストロヴストルップの提案。 EWGでの議論の後にのみ、そのようなマクロの展開で使用される「#IN」によってで許可されたマクロで使用されるマクロを許さ解決策を探すことになりました。

#nomacrosは巣必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top