int fun(String& str)中&是啥意思,什么作用? int fun(String str)和上述表達有什么區別, 我感覺調用的時候都是str.xxx(),為什么參數表達式不一樣?
2 回答

嗶嗶one
TA貢獻1854條經驗 獲得超8個贊
int fun(String& str)中的&表示引用運算符。fun函數表示的是通過引用來進行實參于形參的傳遞。
引用就是某一變量(對象)的一個別名,對引用的操作與對變量直接操作完全一樣。
1、引用的聲明方法
類型標識符 &引用名=目標變量名;
舉例如下:
12 | int a; int &ra=a; //定義引用ra,它是變量a的引用,即別名 |
2、引用的應用
1234567 | void swap( int &p1, int &p2) //此處函數的形參p1, p2都是引用 { int p; p=p1; p1=p2; p2=p; } |
為在程序中調用該函數,則相應的主調函數的調用點處,直接以變量作為實參進行調用即可,而不需要實參變量有任何的特殊要求。如:對應上面定義的swap函數,相應的主調函數可寫為:
1234567 | void main( ) { int a,b; cin>>a>>b; //輸入a,b兩變量的值 swap(a,b); //直接以變量a和b作為實參調用swap函數 cout<<a<< ' ' <<b; //輸出結果 } |

冉冉說
TA貢獻1877條經驗 獲得超1個贊
int fun(String& str),參數是傳遞的String類對象的引用,可以直接改變傳遞進來的對象,和傳遞指針有類似之處,但是標準C并不支持此種參數傳遞方式。int fun(String str),是最普通的參數傳遞方式,不可以直接改變傳遞進來的對象。
添加回答
舉報
0/150
提交
取消