C++中引用&與取地址&的區(qū)別分析
C++中的引用&與取址&是很多初學者經(jīng)常容易出錯的地方,今天本文就對此加以分析總結(jié),供大家參考之用。
具體而言,一個是用來傳值的 一個是用來獲取首地址的
&(引用)==>出現(xiàn)在變量聲明語句中位于變量左邊時,表示聲明的是引用.
例如:
int &rf; // 聲明一個int型的引用rf
&(取地址運算符)==>在給變量賦初值時出現(xiàn)在等號右邊或在執(zhí)行語句中作為一元運算符出現(xiàn)時表示取對象的地址.
在C++中,既有引用又有取地址,好多人對引用和取地址不是很清楚,因此也無法區(qū)分。其實他們的區(qū)別可以用一句話概括:和類型在一起的是引用,和變量在一起的是取址。下面我們通過實例具體了解一下
1)引用在賦值=的左邊,而取地址在賦值的右邊,比如:
int a=3; int &b=a; //引用 int *p=&a; //取地址
2)和類型在一起的是引用,和變量在一起的是取址。 舉例同樣如上,還有下例:
int function(int &i) { } //引用
3)對于vector,上面2條同樣適合
vector<int> vec1(10,1); //initialize vec1: 10 elements, every element's value is 1 vector<int> &vec2 = vec1; // vec2 is reference to vec1 vector<int> *vec3 = &vec2; //vec3 is addresss of vec1 and vec2
希望本文所述對大家C++程序設計的學習能夠有所幫助。
相關文章
在C++程序中開啟和禁用Windows設備的無線網(wǎng)卡的方法
這篇文章主要介紹了在C++程序中開啟和禁用Windows設備的無線網(wǎng)卡的方法,包括一些常見錯誤的分析與解決,需要的朋友可以參考下2016-03-03VS2019使用Windows桌面應用程序模塊創(chuàng)建Win32窗口
這篇文章主要介紹了VS2019使用Windows桌面應用程序模塊創(chuàng)建Win32窗口,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-04-04基于C++語言實現(xiàn)機動車違章處罰管理系統(tǒng)
這篇文章主要介紹了基于C++語言實現(xiàn)機動車違章處罰管理系統(tǒng)的相關資料,需要的朋友可以參考下2016-07-07