テンプレート引数

提供: RAD Studio
移動先: 案内検索

クラス テンプレートの概要:インデックス への移動

複数の引数はクラステンプレート宣言の一部として使えます。また,テンプレート引数としてデータ型のほかに値も使えます。



 template<class Tint size = 64> class Buffer { ... };



size のような型なしのテンプレート引数と,型付きの引数はともにデフォルトの値を持ちます。名前指定のテンプレート引数に渡す値は定数式でなければなりません。



 const int N = 128;
 int i = 256;
 Buffer<int, 2*N> b1;// OK
 Buffer<float, i> b2;// エラー: i は定数でない



テンプレートクラスの各インスタンスはクラスなので,それぞれに静的メンバーがあります。同じように,テンプレート関数には静的なローカル変数があります。