すいません
なぜ駄目なのか全然わかりませ〜ん

>>if( count < 10)
これがストッパーになってhoge<9>以上は作られないんじゃないんでしょうか?


また、
template< int count >
void hoge()
{
printf("%d\n", count);
hoge< count +1 >();
};

void hoge<10>()
{
printf("%d\n", 10);
};

こうしたら出力が「10」になってしまいました。
訳がわかりません、バグでしょうか?