您好,登錄后才能下訂單哦!
&在c++中有兩個用法,
第一 做取地址運算符。
第二 做引用。
引用通俗來說就是一個變量的別名。
int val=3;
int &yin = val; //這時候yin 就是 val的一個引用, 且注意引用定義必須要直接初始化
cout <<"Value"<< yin <<"對比"<<val<<endl; //他們值完全相同
cout << "Address"<<yin <<"對比"<<val<<endl;//他們地址完全相同
2. 將引用做函數參數時,對實參的要求必須是變量,不可以是表達式
例如
double cube(double &a){
a = a*a;
return a;
}
cout << cube(x + 2.0)<<endl;//不對的,不能是表達式
3. double refcube(const double &ra){
return ra*ra*ra;
}
int main(){
double side = 2.0;
long edge = 5L;
double c4 = refcube(edge);
double c5 = refcube(7.0);
double c6 = refcube(side + 10.0);
//雖然形參與實參類型不同。但是因為形參是const double &ra 系統會產生臨時變量,來存儲。
double && c7 = side + 3.0; //這是c++11新增的另一種引用,可以引用右值
cout << c4 << endl;
cout << c5 << endl;
cout << c6 << endl;
cout << c7 << endl;
system("pause");
return 0;
}
注意:引用參數應盡可能的聲明為const 。
好處:1.可以避免無意中修改數據。當然要求必須修改實參的例外
2.函數能夠處理const 和非const 的實參。
3.const 引用可以處理不同類型的形參,并使用臨時變量(字面常量 7.0,表達式 x+3.0)。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。