const和static的區別
一、const
1.static 區域性變數 將乙個變數宣告為函式的區域性變數,那麼這個區域性變數在函式執行完成之後不會被釋放,而是繼續保留在記憶體中
2.static 全域性變數 表示乙個變數在當前檔案的全域性內可訪問
3.static 函式 表示乙個函式只能在當前檔案中被訪問
4.static 類成員變數 表示這個成員為全類所共有
5.static 類成員函式 表示這個函式為全類所共有,而且只能訪問靜態成員變數
作用:(1)函式體內static變數的作用範圍為該函式體,該變數的記憶體只被分配一次,因此其值在下次呼叫時仍維持上次的值;
(2)在模組內的static全域性變數和函式可以被模組內的函式訪問,但不能被模組外其它函式訪問;
(3)在類中的static成員變數屬於整個類所擁有,對類的所有物件只有乙份拷貝;
(4)在類中的static成員函式屬於整個類所擁有,這個函式不接收this指標,因而只能訪問類的static成員變數。
二、static
1.const 常量:定義時就初始化,以後不能更改。
2.const 形參:func(const int a){};該形參在函式裡不能改變
3.const修飾類成員函式:該函式對成員變數只能進行唯讀操作
作用:(1)阻止乙個變數被改變
(2)宣告常量指標和指標常量
(3)const修飾形參,表明它是乙個輸入引數,在函式內部不能改變其值;
(4)對於類的成員函式,若指定其為const型別,則表明其是乙個常函式,不能修改類的成員變數;
(5)對於類的成員函式,有時候必須指定其返回值為const型別,以使得其返回值不為」左值」。
c 的const和static區別
const定義的常量在超出其作用域之後其空間會被釋放,而static定義的靜態常量在函式執行後不會釋放其儲存空間。static表示的是靜態的。類的靜態成員函式 靜態成員變數是和類相關的,而不是和類的具體物件相關的。即使沒有具體物件,也能呼叫類的靜態成員函式和成員變數。一般類的靜態函式幾乎就是乙個全域...
static和const的區別和用處
const總結 1.常物件 const 類名 物件名 例如const cdate d1 2008,8,8 d1就是常物件,物件d1中的所有成員的值都不能被修改,定義常物件必須要有初值,不能做左值,如果定義了常物件,則不能呼叫該物件的非const成員函式,只能訪問const成員函式,如果希望成員函式訪...
const和static的區別和用法
const關鍵字 const關鍵字是定義變數之後,其數值便不能更改,比方說 const week days 7 一周有七天,week day被賦予7之後便不能更改 當const用於指標變數定義時,要注意指向常量的指標和常量指標的區別。用比較形象的例子來描述,指向常量的指標就像乙個針標能動而背景板不能...