程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> C++中援用&與取地址&的差別剖析

C++中援用&與取地址&的差別剖析

編輯:關於C++

C++中援用&與取地址&的差別剖析。本站提示廣大學習愛好者:(C++中援用&與取地址&的差別剖析)文章只能為提供參考,不一定能成為您想要的結果。以下是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++法式設計的進修可以或許有所贊助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved