關於c++函數形參指針 與引用的說明

c++中函數傳遞方式通常爲可以讓主調函數改變傳遞值,選擇函數傳遞指針或者引用兩種方式,針對形參的傳遞兩種方式,他們有區別的 c++

形參指針的傳遞會單獨開闢內存單元來存儲地址,而形參爲引用則不會,引用就是變量的別名,她是和變量共享存儲單元的,因此不會獨佔內存單元(我的建議選擇引用做爲形參經常使用);具體看兩個函數: 函數

//形參是指針變量
void swap(int *a,int *b){
   int temp;
   temp=*a;
   *a=*b;
   *b=temp;

}
//形參引用
void swap(int &a,int &b){
   int temp;
   temp=a;
   a=b;
   b=temp;

}
第一個函數形參爲指針,使用swap(&c,&d);將實參的地址傳輸給指針變量,便是*a,*b和c,d變量對應同一內存單元;

第二個函數形參爲引用,上面也提到引用實質就是變量的別名,因此直接這樣幹swap(c,d);傳遞變量名就能夠了;ps:函數二形參是引用,不是取地址 指針

相關文章
相關標籤/搜索