名前空間
変種
操作

テンプレートメタプログラミング

From cppreference.com
< cpp‎ | language


テンプレートメタプログラミングは、コンパイル時に新しい型を作成し、値を計算するための一連のテクニックです。再帰的なインスタンス化の量と許容される状態変数の数に制限がない場合、C++ テンプレートはチューリング完全です。Erwin Unruh は、委員会会議で、コンパイラにエラーメッセージで素数を表示させることで、テンプレートメタプログラミングを初めて実証しました。標準では、実装が少なくとも1024レベルの再帰的なインスタンス化をサポートすることを推奨しており、テンプレートインスタンス化における無限再帰は未定義の動作です。

[編集] 外部リンク

1.  David Vandevoorde, Nicolai M. Josuttis, Douglas Gregor (2017), C++ Templates - The Complete Guide, 2nd Edition.
2.  Wikibook: Template Meta-Programming.
3.  Wikipedia: Template Meta-Programming.
English 日本語 中文(简体) 中文(繁體)