C 中關鍵字const的用法

2021-08-30 17:42:29 字數 1601 閱讀 7659

const是c++的乙個關鍵字,現在對它的用法做乙個小結。

在c中,如果要頻繁的使用某乙個常量,可以利用巨集定義來利用乙個符號定義這個常量,以後用到這個常量的地方就用這個符號代替即可,這樣修改這個常量的值也方便了很多。在c++中,我們可以利用const替代巨集定義,具體**如下:

#define m 15

const

int n =

15;

const修飾的變數只能在定義位置修改值,其他地方不能對其值進行更改。

注:巨集定義是一種不做任何語法性檢查的替換,而const可以進行型別檢查。

首先要明確,在c++中,引數傳遞可以傳值,也可以傳引用。過去c中可以傳指標,而傳引用底層就是傳指標的效果。所以,當引數所佔記憶體較大時,傳引用相較傳值而言,就高效了很多。所以,c++中,推薦使用傳引用操作。而在傳引用時,如果不希望函式改變傳入的實參,就可以新增關鍵字const。示例**:

class complex

;

同函式引數一樣,在c++中,函式返回值傳遞可以傳值,也可以傳引用。類似,c++中,推薦使用傳引用操作。而在傳引用時,如果不希望函式返回值被改變,就可以新增關鍵字const。示例**:

const

int&

add(

int,

int&

);

在類中,如果乙個函式不會改變類的資料,那麼可以把這個函式宣告成常量成員函式。示例**:

class complex

double

imag()

const..

.private:

double re, im;

};

const表示該函式不會改變類中的資料。為什麼最好要加const呢?

const complex c1(2

,1);

cout << c1.

real()

;cout << c1.

imag()

;

原因是假如我們在程式中這樣定義了乙個物件並且呼叫這兩個函式,而這假設類中兩個函式沒有加const,那麼編譯器就會報錯。

下面就const變數和const函式之間使用規則進行說明。

const變數可以呼叫const成員函式和non-const成員函式,但non-const變數只能呼叫non-const成員函式,不能呼叫const成員函式。

關鍵字的用法 C 中const關鍵字用法總結

ark2000 看完了c primer的基礎篇,對const還是有點陌生,在這裡小小地總結一下吧。在變數的定義前加上const修飾符即可完成const物件的建立。const int val 5 const變數的值不能改變。val 5 error assignment of read only var...

C 中const關鍵字的用法

最近在找工作,在這裡總結一下自己遇到的問題,希望能對大家有所幫助!歡迎討論!如有錯誤,歡迎批評指正!首先是const關鍵字,直接上 這個工程主要實現const關鍵字的一些基本用法 include include using namespace std 用於fun1的引數可以很大,使用引用傳值可以避免...

const關鍵字用法

1 const常量 如const int max 100 優點 const常量有資料型別,而巨集常量沒有資料型別。編譯器可以對前者進行型別安全檢查,而對後者只進行字元替換,沒有型別安全檢查,並且在字元替換時可能會產生意料不到的錯誤 邊際效應 2 const修飾類的資料成員 class a const...