愛立信筆試題目 mutable關鍵字

2021-06-25 08:53:00 字數 851 閱讀 1444

mutable:如果類的成員函式不會改變物件的狀態,那麼這個成員函式一般會宣告成const的。但是,有些時候,我們需要在const的函式裡面修改一些跟類狀態無關的資料成員,那麼這個資料成員就應該被mutalbe來修飾。

class clxtest

;void clxtest::output() const

void outputtest(const clxtest& lx)

類clxtest的成員函式output是用來輸出的,不會修改類的狀態,所以被宣告為const的。

函式outputtest也是用來輸出的,裡面呼叫了物件lx的output輸出方法,為了防止在函式中呼叫其他成員函式修改任何成員變數,所以引數也被const修飾。

如果現在,我們要增添乙個功能:計算每個物件的輸出次數。如果用來計數的變數是普通的變數的話,那麼在const成員函式output裡面是不能修改該變數的值的;而該變數跟物件的狀態無關,所以應該為了修改該變數而去掉output的const屬性。這個時候,就該我們的mutable出場了——只要用mutalbe來修飾這個變數,所有問題就迎刃而解了。

class clxtest

;clxtest::clxtest()

clxtest::~clxtest()

{}void clxtest::output() const

int clxtest::getoutputtimes() const

void outputtest(const clxtest& lx)

計數器m_itimes被mutable修飾,那麼它就可以突破const的限制,在被const修飾的函式裡面也能被修改。

愛立信筆試日記

2006 03 7 今天中午在吃飯的時候,接到乙個 是愛立信公司的,她通知我3.9號去遵義路面試.我當時一下子沒反應過來.驚訝 激動 然後是高興.我身邊沒有筆,那位小姐確定了一下我的郵箱位址,說沒問題等下把位址發到我郵箱裡去.回到寢室,我開啟郵箱.時間是中午1 30.嘿嘿,大公司就是不一樣,先是打 ...

愛立信筆試日記

2006 03 7 今天中午在吃飯的時候,接到乙個 是愛立信公司的,她通知我3.9號去遵義路面試.我當時一下子沒反應過來.驚訝 激動 然後是高興.我身邊沒有筆,那位小姐確定了一下我的郵箱位址,說沒問題等下把位址發到我郵箱裡去.回到寢室,我開啟郵箱.時間是中午1 30.嘿嘿,大公司就是不一樣,先是打 ...

中國電信筆試題目

1 中國電信的企業使命?讓客戶盡情享受資訊新生活 2 中國電信的目標是?做世界級綜合資訊服務提供商。3 中國電信的核心價值觀?全面創新 以人為本 求真務實 共創價值 4 中國電信的經營理念是?追求企業價值與客戶價值共同成長。5 中國電信的服務理念是?使用者至上,用心服務 6 中國電信的企業形象口號是...