c 函式後加const

2021-08-08 16:25:11 字數 407 閱讀 2028

函式後加const的三種情況:

1、  非靜態成員函式後面加const(加到非成員函式或靜態成員後面會產生編譯錯誤)

2、  表示成員函式隱含傳入的this指標為const指標,決定了在該成員函式中,任意修改它所在的類的成員的操作都是不允許的(因為隱含了對this指標的const引用),唯一的例外是對於mutable修飾的成員。

3 、(1)加了const的成員函式可以被非const物件和const物件呼叫

(2)不加const的成員函式只能被非const物件呼叫

例: #includeusing namespace std;

class test

static void print_static() //const //1.錯誤

{cout<< "靜態成員函式" <

C 函式後加const的意義

一些成員函式改變物件,一些成員函式不改變物件。例如 int point gety 這個函式被呼叫時,不改變point物件,而下面的函式改變point物件 void point setpt int x,int y 為了使成員函式的意義更加清楚,我們可在不改變物件的成員函式的函式原型中加上const說明...

C 中成員函式後加const

注 以下內容來自網路,感謝的整理 非靜態成員函式後面加const 加到非成員函式或靜態成員後面會產生編譯錯誤 表示成員函式隱含傳入的this指標為 const指標,決定了在該成員函式中,任意修改它所在的類的成員的操作都是不允許的 因為隱含了對this指標的const引用 唯一的例外是對於 mutab...

c 深拷貝 函式後加const

簡單的來說就是,在有指標的情況下,淺拷貝只是增加了乙個指標指向已經存在的記憶體,而深拷貝就是增加乙個指標並且申請乙個新的記憶體,使這個增加的指標指向這個新的記憶體,採用深拷貝的情況下,釋放記憶體的時候就不會出現在淺拷貝時重複釋放同一記憶體的錯誤!include include using names...