test(int& n){略} 比test(int n){略} 這個效率一樣,但是一般int這些并非類或者結構型
變量是不用引用傳址的,除非你要修改傳過來的n在原函數中的值.因為引用傳址傳的是一個指針,系統中是一個push一個pop兩個指令,int也是兩這個指令,效率相同.
但是結構或者類若不是引用傳址,系統會先在棧里分配一個
臨時變量出來,然后在進行調用類的構造函數,再把成員
變量進行賦值,等該函數返回后還要進行調用析構函數,這樣就會使本來很簡單的工作出現很多無用功,導致程序效率下降.
從匯編也可以看出是否產生了臨時變量