//模板元编程加速递归
//缺点:模板元在编译时处理,无法调试,并且会加大代码体积
#include<iostream>
using namespace std;
template <int N>
struct data
{
enum{res = data<N - 1>::res + data<N - 2>::res};
};
template <>//模板具体化
struct data<1>
{
enum{res = 1};
};
template <>
struct data<2>
{
enum{res = 1};
};
int main()
{
cout << data<40>::res << endl;
return 0;
}
时间: 2024-11-02 20:09:31