C 中 引用 與取位址 的區別

2021-06-18 23:52:37 字數 901 閱讀 6439

乙個是用來傳值的 乙個是用來獲取首位址的

&(引用)==>出現在變數宣告語句中位於變數左邊時,表示宣告的是引用.

例如: 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 reference 宣告乙個int型的引用rf.取位址運算子 在給變數賦初值時出現在等號右邊或在執行語句中作為一元運算子出現時,表示取物件的位址.在c 中,既有引用又有取位址,好...

C 中 引用 與取位址 的區別

乙個是用來傳值的 乙個是用來獲取首位址的 引用 出現在變數宣告語句中位於變數左邊時,表示宣告的是引用.例如 int rf 宣告乙個int型的引用rf.取位址運算子 在給變數賦初值時出現在等號右邊或在執行語句中作為一元運算子出現時 表示取物件的位址.在c 中,既有引用又有取位址,好多人對引用和取位址不...

C 中 引用 與取位址 的區別

原址 乙個是用來傳值的 乙個是用來獲取首位址的 引用 出現在變數宣告語句中位於變數左邊時,表示宣告的是引用.例如 int rf 宣告乙個int型的引用rf.取位址運算子 在給變數賦初值時出現在等號右邊或在執行語句中作為一元運算子出現時 表示取物件的位址.1 引用在賦值 的左邊,而取位址在賦值的右邊,...