0
我想問一個簡單的問題靜態函數常量靜態成員函數
就像在我的私人成員中,我已經聲明瞭靜態成員。
static int id;
,並在公共我用getter函數這個ID
static int getID() const;
的compilor是給我一個錯誤,但是當我不使用常量它不給任何錯誤,因爲這是唯一的吸氣劑應該是不變的,請告訴我原因。
我想問一個簡單的問題靜態函數常量靜態成員函數
就像在我的私人成員中,我已經聲明瞭靜態成員。
static int id;
,並在公共我用getter函數這個ID
static int getID() const;
的compilor是給我一個錯誤,但是當我不使用常量它不給任何錯誤,因爲這是唯一的吸氣劑應該是不變的,請告訴我原因。
這是一個static
函數,它不能是const
,因爲它不作用於任何特定類的實例。這意味着這樣的函數沒有this
指針(隱式地作爲隱藏參數傳遞)給任何特定的實例。你應該寫
static int id;
static int getID();
也可以讓這個功能非static
int getID() const;
但是一般這樣的功能應該是靜態的,只要它並不需要訪問特定對象的代表性。