C++中 引用与取地址的区别
生活随笔
收集整理的這篇文章主要介紹了
C++中 引用与取地址的区别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一個是用來傳值的 一個是用來獲取首地址的
&(引用)==>出現在變量聲明語句中位于變量左邊時,表示聲明的是引用.
例如: int &rf; // 聲明一個int型的引用rf.
&(取地址運算符)==>在給變量賦初值時出現在等號右邊或在執行語句中作為一元運算符出現時
表示取對象的地址.
在C++中,既有引用又有取地址,好多人對引用和取地址不是很清楚,因此也無法區分。其實他們的區別可以用一句話概括:和類型在一起的是引用,和變量在一起的是取址。下面我們通過實例具體了解一下
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++中 引用与取地址的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: int a = 0 与 int a(0)
- 下一篇: QT--foreach的用法