C++中引用&與取地址&的區(qū)別分析
C++中的引用&與取址&是很多初學(xué)者經(jīng)常容易出錯(cuò)的地方,今天本文就對(duì)此加以分析總結(jié),供大家參考之用。
具體而言,一個(gè)是用來(lái)傳值的 一個(gè)是用來(lái)獲取首地址的
&(引用)==>出現(xiàn)在變量聲明語(yǔ)句中位于變量左邊時(shí),表示聲明的是引用.
例如:
int &rf; // 聲明一個(gè)int型的引用rf
&(取地址運(yùn)算符)==>在給變量賦初值時(shí)出現(xiàn)在等號(hào)右邊或在執(zhí)行語(yǔ)句中作為一元運(yùn)算符出現(xiàn)時(shí)表示取對(duì)象的地址.
在C++中,既有引用又有取地址,好多人對(duì)引用和取地址不是很清楚,因此也無(wú)法區(qū)分。其實(shí)他們的區(qū)別可以用一句話概括:和類型在一起的是引用,和變量在一起的是取址。下面我們通過(guò)實(shí)例具體了解一下
1)引用在賦值=的左邊,而取地址在賦值的右邊,比如:
int a=3; int &b=a; //引用 int *p=&a; //取地址
2)和類型在一起的是引用,和變量在一起的是取址。 舉例同樣如上,還有下例:
int function(int &i) { } //引用
3)對(duì)于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
希望本文所述對(duì)大家C++程序設(shè)計(jì)的學(xué)習(xí)能夠有所幫助。
相關(guān)文章
快來(lái)領(lǐng)取!你想要的C++/C語(yǔ)言優(yōu)秀書籍
如何選擇合適的C++/C語(yǔ)言書籍,是不是已經(jīng)眼花繚亂,不知道該選擇哪本好了呢?今天我來(lái)為大家分享兩本不可錯(cuò)過(guò)的優(yōu)秀書籍2017-09-09c語(yǔ)言實(shí)現(xiàn)找最大值最小值位置查找
這篇文章主要介紹了c語(yǔ)言實(shí)現(xiàn)找最大值最小值位置查找,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02在C++程序中開啟和禁用Windows設(shè)備的無(wú)線網(wǎng)卡的方法
這篇文章主要介紹了在C++程序中開啟和禁用Windows設(shè)備的無(wú)線網(wǎng)卡的方法,包括一些常見(jiàn)錯(cuò)誤的分析與解決,需要的朋友可以參考下2016-03-03VS2019使用Windows桌面應(yīng)用程序模塊創(chuàng)建Win32窗口
這篇文章主要介紹了VS2019使用Windows桌面應(yīng)用程序模塊創(chuàng)建Win32窗口,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04基于C++語(yǔ)言實(shí)現(xiàn)機(jī)動(dòng)車違章處罰管理系統(tǒng)
這篇文章主要介紹了基于C++語(yǔ)言實(shí)現(xiàn)機(jī)動(dòng)車違章處罰管理系統(tǒng)的相關(guān)資料,需要的朋友可以參考下2016-07-07C語(yǔ)言指針之必須要掌握的指針基礎(chǔ)知識(shí)
這篇文章主要介紹了C語(yǔ)言指針必須要掌握的基礎(chǔ)知識(shí),文中實(shí)例講解的很清晰,有不太懂的同學(xué)可以研究下,希望能夠給你帶來(lái)幫助2021-09-09C語(yǔ)言實(shí)現(xiàn)影院售票管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)影院售票管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-08-08