本来、型を指定するのが、テンプレートのパラメータ部分だが、型以外のモノを指定することもできる。
テンプレート仮引数 | Programming Place Plus C++編【言語解説】 第22章
array.hで、
array_の型はTになっていて、テンプレートパラメータで型を指定する。
一方で、array_の添字の要素数の部分はNになっていて、これもテンプレートパラメータでintなのでこの場合は整数を指定する。
main.cppでは、
こんな感じでテンプレートパラメータを指定する。
$ vi main.cpp $ g++ main.cpp -o main $ ./main set range error! ary.get(0) = 10 ary.get(1) = 20 ary.get(2) = 30 ary.get(3) = 40 ary.get(4) = 50 get range error! ary.get(5) = -1 $
確かに要素数は5である。