c/c++斐波那契数列利用模板元解决递归慢的问题

#include

创新互联公司网站建设提供从项目策划、软件开发,软件安全维护、网站优化(SEO)、网站分析、效果评估等整套的建站服务,主营业务为成都网站建设、成都网站制作,app软件开发公司以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。创新互联公司深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

//模板元 变成 一般用于递归 游戏开发里常用
template
struct data
{
 enum {res=data::res+data::res};
};
template<>
struct data<1>
{
 enum {res=1};
};
template<>
struct data<2>
{
 enum {res=2};
};


int getdata(int n)
{
 if (n==1||n==2)
 {
  return 1;
 }
 else
 {
  return  getdata(n - 1) + getdata(n - 2);
 }
}
void main()
{
 int i;
 int f[20] = { 1,1 };//20个数组,但它的序号是从0开始到19的...
 for (i = 2;i < 20;i++)
 {
  f[i] = f[i - 2] + f[i - 1];
  //std::cout< }
 std::cout< int unm = data<45>::res;
 std::cout << unm << std::endl;
 //std::cout << getdata(40) << std::endl;


 std::cin.get();

}


当前名称:c/c++斐波那契数列利用模板元解决递归慢的问题
文章转载:http://ybzwz.com/article/pdohdp.html