其实一个重要思想就是利用局部特化。注意特化不单单能够用类型,还能够用数值。以下:spa
// 主模板 template<int N> struct Fib { enum { Result = Fib<N-1>::Result + Fib<N-2>::Result }; }; // 彻底特化版 template <> struct Fib<1> { enum { Result = 1 }; }; // 彻底特化版 template <> struct Fib<0> { enum { Result = 0 }; }; int main() { int i = Fib<10>::Result; // std::cout << i << std::endl; }