//1>引用:很多書描述引用為乙個變數或物件的乙個別名(alias),成為該變數或
//物件的同義詞,然而,實際上引用是「別名其表,指標其實」。也即,引用
//實質上是乙個指標,但使用時卻像乙個別名。
//2>引用的主要用途:a:用作函式引數,用於傳遞大型物件,必要時可從函式內部
修改函式外部的實參。此功能和指標相同,
b.從函式返回的引用可用作等式左值。
int i; //整型變數
int &r=i;//引用r被初始化為整型變數i的別名
引用的初始化是指將該引用定義為某個變數的別名,所以應用初始化時必須使用乙個變數;引用初始化後,其使用和指標完全相同,其記憶體儲存內容中存放了該變數的位址。引用一旦初始化後,即不能再被重新初始化,即所存位址值不能再更改。
但引用可以重新賦值。引用(r)重新賦值時將同時改變該引用(r)以及它用作別名的那個變數(i)的具體值。
//4>在傳址呼叫中有時使用void指標,更為靈活,它和void變數的含義完全不同。
void 變數是「什麼變數都沒有」,eg:
void fun(int);表示函式fun不返回任何變數。
但void指標是「任何型別的指標」,eg:
void fun(void*);表示函式fun的形參可以是指向任何型別變數的指標。
//5>用const保護實參或資料成員eg:
void display(const int &x,const int &y);
CPP核心程式設計(2)引用
引用的使用如下 include using namespace std intmain 通過new建立陣列 堆區開闢的資料,由人手動開闢,釋放使用操作符delete 三種傳遞方式的區別 include using namespace std 值傳遞 void swap 1 int a,int b 位...
C Primer 筆記五 引用 const 1
定義 const 物件 常量在定義後就不能被修改,所以定義時必須初始化 在全域性作用域宣告的 const 變數是定義該物件的檔案的區域性變數。此變數只存在於那個檔案中,不能被其他檔案訪問。這種情況解決辦法 通過指定 const 變更為 extern,就可以在整個程式中訪問 const 物件 file...
C Primer 筆記五 引用 const 1
定義 const 物件 常量在定義後就不能被修改,所以定義時必須初始化 在全域性作用域宣告的 const 變數是定義該物件的檔案的區域性變數。此變數只存在於那個檔案中,不能被其他檔案訪問。這種情況解決辦法 通過指定 const 變更為 extern,就可以在整個程式中訪問 const 物件 file...