📄 506.cpp
字号:
//506.cpp demo 两种不同的传递参数法的调用开销时间
//using class FTimer
#include "ftimer.h"
class Book
{
public:
unsigned long No;
Book(int n){No=n;};
~Book(){};
};
void Add(Book b);
void AddRef(Book & b);
void main()
{
Book B1(1),B2(1);
FTimer t1,t2;
unsigned long i;
const unsigned long COUNT = 10000000L; //10M
t1.Start(); // 获取计算前的开始时间
for(i=0; i<COUNT; i++)Add(B1);
t1.Stop(); // 获取计算后的结束时间
t2.Start(); // 获取计算前的开始时间
for(i=0;i<COUNT;i++)AddRef(B2);
t2.Stop(); // 获取计算后的结束时间
cout << "time pass objectccc is ";t1.DisplayDeltaTime();
cout << "time pass Reference is ";t2.DisplayDeltaTime();
return ;
}
void Add(Book b)// 普通参数传递
{b.No++;}
void AddRef(Book & b)// 引用参数传递
{b.No++; }
/*
time pass objectccc is 1210mS
time pass Reference is 160mS
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -