const之常用方法總結

2021-09-30 06:48:50 字數 1615 閱讀 6647

定義一常量避免被無意修改,定義時必須被初始化;
const int temp = 512;

temp = 0; // error:attempt to write to const object

定義乙個指向const物件的引用,可讀取但不可以修改;

const int temp = 512;

const int &rtemp = temp;

int &rtemp2 = temp; // error:nonconst regerence to const object

全域性作用域定義的const變數是定義該物件的檔案的區域性變數,不可被其它檔案訪問,但通過指定為extern則可以在整個程式中訪問const物件。

對比:// file1.cpp

int one = 10;

extern const int two = 20;

// file2.cpp

extern int one;

extern const int two;

注意:如果const變數不是用常量表示式初始化,不應該在標頭檔案不定義。     

const指標:指標本身不可以修改,但指向的值可修改。

指向const物件的指標:不允許用指標修改所指向的值,指標本身可修改(指向另乙個const物件)。

對比:// const指標

int numb = 20;

int *const one = &numb;

one = one; // error:one is const

*one = 0; // ok

// 指向const物件的指標

const double *one;

*one = 10; // error:*one might be const

const double pi = 3.14;

double *ptr = π // error:ptr is a plain pointer

const double *cptr = π // ok

即不能修改所指物件的值,也不能修改該指標的指向。

const double pi = 3.14;

const double *const pi_ptr = π

陣列元素都是const物件,無法重新賦值。

const int *array = new const int[100](); // ok:value-initialized

可轉換掉表示式的const性質,除了新增或刪除const特性,用const_cast符來執行其它任何型別轉換都會引起編譯錯誤。

const char *par;

char *pc = string_copy(const_cast(par));

const引用避免複製。

bool shorter(const string &s1, const string &s2);

int greater(const void* p1, const void* p2);

返回值為const:返回值不能被修改,當然也不能為左值。

const char &get(int n);

const函式。

void get(int n) const;

jQuery之常用方法總結

1.獲取dom元素 操作方法 jq選擇器 根據選擇器型別快速獲取需要的元素 selector content box imgbox box a a box eq n 獲取集合中索引為n的 gt n 大於這個索引的 lt n 小於這個索引的 節點之間關係的屬性 用jq選擇器獲取的元素,我們設定變數名的...

Const 使用方法總結

const 使用方法總結 const限定符的特點在於 強制最低訪問權原則。用這個原則正確的設計軟體可大大減少除錯時間和不良 並且能夠使程式易於修改和除錯。給函式傳遞的指標有如下四種情況 指向非常量資料的非常量指標 指向非常量資料的常量指標 指向常量資料的非常量指標 指向常量資料的常量指標 1 如果傳...

重溫C primer 之const總結

1.const變數,即常變數 變數值保持不變,不能被修改 a.const變數預設時是定義該變數的檔案的區域性變數 b.非const 指標無法指向const 變數,只有const 指標能指向const 變數。c.一些const 變數定義在標頭檔案中,const變數通過常量表示式自我初始化時.2.a.a...