IT用語集 › プログラミング › マクロ

マクロ

プログラミング Svenska → 更新: 2026-10-22

コードを生成するコード。Cのプリプロセッサ(#define)、LispやSchemeのS式マクロ、Rustの宣言的マクロと手続き的マクロなどがある。強力だが危険でもある。

Cのマクロは単なるテキスト置換で、名前の衝突や評価順序のバグで悪名高い。LispのマクロはAST上で動くため衛生的で強力。Rustにはmacro_rules!(宣言的)と、derive、関数風、属性用の手続き的マクロがある。現在の見方では、マクロは「最後の手段」であり、使いすぎるとコードが読めなくなる。C++のテンプレートメタプログラミングは技術的には親戚だが、正式にはマクロではない。

← 用語集に戻る