templeteでフォボナっちみたいのって、
実際に何に使うのかね…?

template<int n>
struct fibonacci
{
static constexpr int value = fibonacci<n-1>::value + fibonacci<n-2>::value;
};