關於 const 成員函式

2022-07-24 08:36:10 字數 548 閱讀 6633

成員函式如果是const意味著什麼?

有兩個流行概念:物理常量性和邏輯常量性。

c++對常量性的定義採用的是物理常量性概念,即const 成員函式不可以更改物件內任何non-static成員變數。例如:

1

class

ctextblock2;

1213 std::size_t ctextblock::length() const

1420

return

textlength;

21 }

上面**中發生錯誤,在const成員內不能賦值給textlength和lengthisvalid,怎樣解決呢?

mutable釋放掉non-static成員變數的物理常量性約束:

1

class

ctextblock2;

1213 std::size_t ctextblock::length() const

1420

return

textlength;

21 }

const成員函式

prime c 在類sales item中,same isbn函式定義如下 bool sales item same isbn const sales item rhs const const 成員函式的引入 跟在 sales item 成員函式宣告的形參表後面的 const 所起的作用了 cons...

const成員函式

我們知道,在c 中,若乙個變數宣告為const型別,則試圖修改該變數的值的操作都被視編譯錯誤。例如,cpp view plain copy const char blank blank n 錯誤 物件導向程式設計中,為了體現封裝性,通常不允許直接修改類物件的資料成員。若要修改類物件,應呼叫公有成員函...

const成員函式

一.關於const成員函式的呼叫 const物件只能呼叫const成員函式 cpp view plain copy include using namespace std class a void fun intmain 輸出 const 成員函式 但是如果把第以1個fun注釋掉就會出錯 error...