c++模版元编程求菲波那切数列

顺便给我讲解一下模版元编程这些代码的意义,看书看不懂,还有就是为什么这里适合用枚举型
感谢!

// 主模板
template
struct Fib
{
enum { Result = Fib::Result + Fib::Result };
};

// 完全特化版
template <>
struct Fib
{
enum { Result = 1 };
};

// 完全特化版
template <>
struct Fib
{
enum { Result = 0 };
};

int main()
{
int i = Fib::Result;
// std::cout << i << std::endl;
}
http://www.cnblogs.com/salomon/archive/2012/06/04/2534787.html

利用模板特化机制实现编译期条件选择结构,利用递归模板实现编译期循环结构,模板元程序则由编译器在编译期解释执行。

就是让编译器,做递归

就是让编译器,做递归