變數名稱是變數附屬在記憶體位置中的標籤,使用者可以把引用當成是變數附屬在記憶體位置中的第二個標籤,因此,使用者可以通過原始變數名稱或引用來訪問變數的內容,例如:
int i=17;
我們可以為i宣告引用變數,如下所示:
int& r=i;
在這些宣告中,&讀作引用
引用通常用於函式引數列表和函式返回值
把引用作為引數
把引用作為返回值
通過使用引用來替代指標,會使c++程式更容易閱讀和維護,c++函式可以返回乙個引用,方式與返回乙個指標類似
當函式返回乙個引用時,則返回乙個指向返回值的隱式指標,這樣,函式就可以放在賦值語句的左邊
當返回乙個引用時,需要注意被引用的物件不能超出作用域,所以返回乙個對區域性變數的引用是不合法的,但是,可以返回乙個對靜態變數的引用
int& func()
int q;//在編譯時錯誤
static int x;
return x;//安全,x在函式作用域外依然有效
c 中引用物件如何建立副本
c 中的類的例項都是引用型別,用簡單的賦值運算子 無法建立它的副本,比如 classa a new classa classa b a a和b指向的是同一塊記憶體。所以與我們的本意不符。我們的本意是想重新開闢記憶體以儲存a的值。這時候可以使用object類的乙個protect 方法 memberwi...
c 中引用物件如何建立副本
c 中的類的例項都是引用型別,用簡單的賦值運算子 無法建立它的副本,比如 classa a new classa classa b a a和b指向的是同一塊記憶體。所以與我們的本意不符。我們的本意是想重新開闢記憶體以儲存a的值。這時候可以使用object類的乙個protect 方法 memberwi...
C 引用 const 引用
通過引用修改它指向變數的值 也就是說 通過修改 b 達到修改 a 的目的,也可以修改a int a 5 int b a b 40 int c b 此時a b c 40 例項1 宣告 double getarea int num 呼叫 double area this getarea 30 1 將30...