|
钱能的C++里有这样一个内联函数的例子:
#include <iostream>
#include <time.h>
#include <conio.h>
using namespace std;
int calc1(int x,int y){ return x+y;}
inline int calc2(int x,int y){return x+y;}
main()
{int x[1000],y[1000],z[1000];
clock_t t=clock();
for(int i=0;i<1000;i++)
for(int j=0;j<1000;j++)
for(int k=0;k<1000;k++)
z[i]=calc1(x[j],y[k]);
cout<<"NOT USING INLINE:"<<(clock()-t)/CLK_TCK<<"seconds\n";
t=clock();
for(int i=0;i<1000;i++)
for(int j=0;j<1000;j++)
for(int k=0;k<1000;k++)
z[i]=calc2(x[j],y[k]);
cout<<"USING INLINE:"<<(clock()-t)/CLK_TCK<<"seconds\n";
getchar();
}
书上得的结果是没有内联的函数是8.281秒
有内联的函数是2.437秒.
我的机器得出的两个函数全是10秒,晕死我了
谁能帮我解决一下啊...先谢谢拉. |
|