VC PlusPlus:マクロ定義を展開した後のプログラムを確認する方法 新しいページはコチラ
提供: yonewiki
(→概要) |
(→概要) |
||
3行: | 3行: | ||
C++のプリプロセッサ([[C プリプロセッサ]]、[[C マクロ]]、[[C プリプロセッサ演算子]]、[[C ディレクティブ]])の記事で、マクロ定義の動きについて細かく説明しましたが、実際のマクロ定義は複雑で、自分が説明した内容が理解できていれば、展開はできるにしても、聞きかじった程度の知識では、全ての置き換えを元に戻せるとは限らないし、もっと複雑なことだったりします。もっと複雑な場合の展開になると創造力がないと難しいです。正直、展開疲れみたいなこともありえます。作った人は楽をしようと思って知恵を振り絞るだけですが、他人が読み解けるかどうかといえば、そうでもないということです。マクロ定義の中でマクロ定義をするという、わりかし深いマクロ定義も存在します。 | C++のプリプロセッサ([[C プリプロセッサ]]、[[C マクロ]]、[[C プリプロセッサ演算子]]、[[C ディレクティブ]])の記事で、マクロ定義の動きについて細かく説明しましたが、実際のマクロ定義は複雑で、自分が説明した内容が理解できていれば、展開はできるにしても、聞きかじった程度の知識では、全ての置き換えを元に戻せるとは限らないし、もっと複雑なことだったりします。もっと複雑な場合の展開になると創造力がないと難しいです。正直、展開疲れみたいなこともありえます。作った人は楽をしようと思って知恵を振り絞るだけですが、他人が読み解けるかどうかといえば、そうでもないということです。マクロ定義の中でマクロ定義をするという、わりかし深いマクロ定義も存在します。 | ||
− | + | 例えば以下のようなマクロ定義だとどうでしょう? | |
<syntaxhighlight2 lang="Cpp"> | <syntaxhighlight2 lang="Cpp"> |