C Primer 筆記五 引用 const 1

2021-06-21 20:34:05 字數 1175 閱讀 3928

定義 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 和物件字面量表示法。一般常用物件字面量標識法 一是因為 量少,二是物件字面量可...