test(int& n){略} 比test(int n){略} 这个效率一样,但是一般int这些并非类或者结构型
变量是不用引用传址的,除非你要修改传过来的n在原函数中的值.因为引用传址传的是一个指针,系统中是一个push一个pop两个指令,int也是两这个指令,效率相同.
但是结构或者类若不是引用传址,系统会先在栈里分配一个
临时变量出来,然后在进行调用类的构造函数,再把成员
变量进行赋值,等该函数返回后还要进行调用析构函数,这样就会使本来很简单的工作出现很多无用功,导致程序效率下降.
从汇编也可以看出是否产生了临时变量