*C++テンプレートメタプログラミング(MPL)とは? [#k6f6be16] テンプレートメタプログラミングとは、C++のテンプレート(template)を使って、コンパイル時に様々な処理を行ってしまうテクニックです。 **テンプレートメタプログラミングのメリット [#m1fd9729] +ビルド時に処理されるため、エラーや不具合を実行時まで持ち越さない -- ビルド時でバッギングが可能 +テンプレートによって実現されるため、実行速度が速い。-- マクロが展開されるため最適化されやすい +ユーザーが作ったクラスをプラグインしたり、機能拡張が容易 -- 拡張しても処理速度は落ちない +通常のプログラミングでは非常に困難な処理を実現できる -- たとえば、コードジェネレーターのような機能も実現可能 #back