你想了解的C 中const的作用

2021-10-09 03:30:44 字數 1040 閱讀 2518

關於c++中const限定符的作用你了解哪些呢?

好的,廢話不多說,我們直接上菜!①

第乙個,對的,就是你首先想到的那個,const可以用於定義常量,const定義的常量編譯器可以對齊進行資料靜態型別安全檢查。②

const修飾函式的形參:當輸入的引數型別為使用者自定義或者是抽象型別資料時,這個時候應該將「值傳遞」改為「const & 傳遞」,可以用來提高效率。

為什麼會提高效率,舉個栗子:

void

f(a a)

;void

f(a const

&a);

第乙個函式的效率較低,因為建立乙個a型別的臨時物件需要呼叫臨時物件的建構函式、析構函式,同時值的賦值也是需要時間的。

第二個函式採取「引用傳遞」,不需要產生臨時物件,節省了臨時物件的構造、賦值以及析構。但是需要注意的是僅僅用引用可能改變a的值,所以加上const限定符。③

const可以修飾函式的返回值:例如「指標傳遞「的函式返回值加上const,那麼返回值不能被直接的修改,改返回值只能被附加給加了const的同型別指標。

舉個栗子:

const

charf1(

void);

char

*ch =f1(

);//給你乙個大嘴巴子

const

char

*ch =f1(

);//不錯 孺子可教也

可以用來修飾類的成員函式(函式定義體):任何不會修改資料成員的函式都應該用const修飾。因為這樣可以避免不小心修改了資料成員或者是呼叫了非const成員函式,const修飾的成員函式形式如下:

bool

are_you_gay

(void

)const

;

塵埃落定 所有你想了解的Apple Watch綜述

3月9日的最新細節 4月10日起所有款式均可預訂。4月24日正式發售。首批發售地區包括英國 澳大利亞 中國 日本 香港 德國和法國。秉承 全天電池續航 的設計原則,在正常使用情況下,其電池續航時間可達到18個小時。如果使用者可以使用這款手錶輕鬆地即時聊天,它將超越其他智慧型手錶。下面讓我們來看看本次...

c 中const的作用

const給人的第一印象就是定義常量。1 const用於定義常量。例如 const int n 100 const int m 200 這樣程式中只要用到 n m 就分別代表為整型100 200,n m 為一常量,在程式中不可改變。但有人說他程式設計時從來不用const定義常量。我相信。但他是不懂得...

c 中const的作用

const給人的第一印象就是定義常量。1 const用於定義常量。例如 const int n 100 const int m 200 這樣程式中只要用到 n m 就分別代表為整型100 200,n m 為一常量,在程式中不可改變。但有人說他程式設計時從來不用const定義常量。我相信。但他是不懂得...