c const用法總結

2021-07-04 23:59:04 字數 1187 閱讀 7451

看了好多博主寫的關於const的總結,總是仁者見仁,智者見智,好多博主都多多少少的有一些錯誤,在這總結一下c++ const的用法,我的文章中也可能會有錯誤,望指正!

一.定義常量

(1)const修飾變數

int const a=5;

const int a=5;

這兩種定義方法是一樣的,都是不希望a的值發生改變

(2)const修飾指標

1.指標是常量不可變

char * const p;

2.指標指向的內容不可變

char const *p;

const char *p;

3.指標與指向的內容都不可變

const char *const p;

tips:

const在*左邊表示const修飾的是指標p指向的內容;

const在*右邊表示const修飾的是指標p;

(3)函式中使用const

1.const修飾函式引數,主要由兩種用法

a.const修飾指標指向的內容不變

void function(const char* p);

b.函式引數為引用,為了防止引數在函式體內被修改所以加上const

void function(const int& p);

2.const修飾函式返回值

const修飾函式返回值跟const修飾指標變數一樣,看const在*的左邊還是右邊;

(4)const修飾類相關

1.const修飾類的成員變數必須初始化

2.const修飾類的成員函式

幾點注意:

a.const成員函式只允許const物件來呼叫;

b.const成員函式可以訪問其類的所有成員變數無論是const還是非const;

c.非const物件不能呼叫const成員函式;

d.非const成員函式不允許呼叫const物件的任意資料;

e.在宣告乙個成員函式的時候,如果該成員函式不改變物件的變數,盡量宣告為const成員函式。

C const用法總結

const名叫常量限定符,用來限定特定變數,以通知編譯器該變數是不可修改的。使用const,可以避免在函式中對某些不應修改的變數造成可能的改動。非const 變數預設為extern,這樣就不可以被程式其它檔案訪問,要想const變數能夠被在其他的檔案中訪問,必須顯式地指定它為extern,如exte...

C const用法總結

一 c語言中 1.const修飾的是常變數,存放在 段,僅僅是在編譯階段看常變數是否做左值,其他處理和普通變數一樣 2.若修飾全域性變數,其屬性是global。二 c 中 1.const修飾的量稱為常量,在編譯階段將用到常量的地方替換成常量初始化的值 注 1 一定要初始化,因為要做替換 2 不能做左...

c const與 define的用法總結

1 const a.可以用來定義常量 修飾函式引數 修飾函式返回值等三個作用。編譯階段 b.被const修飾的東西都受到強制保護,可以預防意外的變動,能提高程式的健壯性。2 define define是乙個巨集定義,可以定義乙個全域性變數,在整個檔案中都可以使用,它只是乙個字元替換操作,不做型別檢查...