定義 const 物件
常量在定義後就不能被修改,所以定義時必須初始化
在全域性作用域宣告的 const 變數是定義該物件的檔案的區域性變數。此變數只存在於那個檔案中,不能被其他檔案訪問。
這種情況解決辦法:通過指定 const 變更為 extern,就可以在整個程式中訪問 const 物件
// file_1.cc
extern const int bufsize = fcn();
// file_2.cc
extern const int bufsize;
for (int index = 0; index != bufsize; ++index)
// ...
非 const 變數預設為 extern。要使 const 變數能夠在其他的
檔案中訪問,必須地指定它為 extern。
引用引用就是物件的另乙個名字。在實際程式中,引用主要用作函式的形式引數。
引用是一種復合型別,通過在變數名前新增「&」符號來定義。
int ival = 1024;
int &refval = ival; // ok: refval refers to ival
當引用初始化後,只要該引用存在,它就保持繫結到初始化時
指向的物件。不可能將引用繫結到另乙個物件。
int a = 122;
int &b = a;
int &c = b;
cout<366 372
const 引用是指向 const 的引用,「const 引用」的意思是「指向 const 物件的引用」。
const int ival = 1024;
const int &refval = ival;
//int &ref2 = ival; //error
const 引用 初始化對於非 const 引用卻是不合法的,而且會導致編譯時錯誤。
int i = 42;
int &r = i;
const int &r2 = r + i;
//int &r2 = r + i;//error
非 const 引用只能繫結到與該引用同型別的物件。
double dval = 3.14;
const int &ri = dval;//ok
//int &ri = dval;//error
C Primer 筆記五 引用 const 1
定義 const 物件 常量在定義後就不能被修改,所以定義時必須初始化 在全域性作用域宣告的 const 變數是定義該物件的檔案的區域性變數。此變數只存在於那個檔案中,不能被其他檔案訪問。這種情況解決辦法 通過指定 const 變更為 extern,就可以在整個程式中訪問 const 物件 file...
學習筆記 五 引用型別
引用型別的值 物件 是引用型別的乙個例項。ecmascript提供了很多原生的引用型別 例如object 以便開發人員用以實現常見的計算任務。1.object型別 1 建立object例項的兩種方法 new object 和物件字面量表示法。一般常用物件字面量標識法 一是因為 量少,二是物件字面量可...
學習筆記 五 引用型別
引用型別的值 物件 是引用型別的乙個例項。ecmascript提供了很多原生的引用型別 例如object 以便開發人員用以實現常見的計算任務。1.object型別 1 建立object例項的兩種方法 new object 和物件字面量表示法。一般常用物件字面量標識法 一是因為 量少,二是物件字面量可...