聲明對象時可以用const進行修飾,稱為常對象。常對象的數據成員值在對象的整個生存期間內不能被改變。常對象必須進行初始化,而且不能更新。
還可以用const修飾類成員,如下:
1.常成員函數
使用const關鍵字修飾的函數為常成員函數,常成員函數聲明的格式為:
類型說明符 函數名(參數表) const ;
const是函數類型的一個組成部分,因此在函數的定義部分也要帶const關鍵字。
如果將一個對象說明為常對象,則通過該對象只能調用它的常成員函數,而不能調用其他成員函數。
無論是否通過常對象調用常成員函數,在常成員函數調用期間,目的對象都被視為常對象,因此常成員函數不能更新目的對象的數據成員,也不能針對目的對象調用該類中沒有用const修飾的成員函數。
const關鍵字可以用於對重載函數的區分。
2.常數據成員
就像一般數據一樣,類的成員函數也可以是常量,使用const說明的數據成員為常數據成員。如果一個類中說明了常數據成員,那麼任何函數中都不能對該成員賦值。
常引用:
如果在聲明引用時用const修飾,被聲明的引用就是常引用。常引用所引用的對象不能被更新。