3 回答

TA貢獻(xiàn)883條經(jīng)驗(yàn) 獲得超454個(gè)贊
你提到的那句話在第一幅圖里吧。
對(duì)于你的第一問:結(jié)合上下文,這句話中的“該方法”指的應(yīng)該是 GetSocket() 吧。
對(duì)于你的第二問:所謂“類的狀態(tài)”指的就是對(duì)象本身具有的那些屬性,比如類實(shí)例自己的成員變量之類的。
“整型套接字句柄怎么修改類的狀態(tài)???”? 顯然有其他的方式——比如某些更底層的函數(shù)——可以通過套接字句柄來改變套接字的狀態(tài)。
GetSocket 函數(shù)被修飾為 const,這表示設(shè)計(jì)者并不希望調(diào)用這個(gè)函數(shù)會(huì)導(dǎo)致類實(shí)例的成員變量(或者說自身的狀態(tài))被修改??墒撬祷亓司浔赡苡衅渌瘮?shù)可以通過這一句柄來修改套接字,這就違背了設(shè)計(jì)者的初衷,所以說這樣的設(shè)計(jì)是糟糕的。
這其實(shí)就是最基本的封裝細(xì)節(jié)的面向?qū)ο笏枷?。如果你不明白(或者看不懂上面的解釋),我覺得你不如再把這些最最基礎(chǔ)的面向?qū)ο蟾拍詈煤脧?fù)習(xí)下......? ? 你提的這個(gè)問題表現(xiàn)出你還沒有完全理解面向?qū)ο蟮乃枷耄赡芤矝]有學(xué)明白 C++。

TA貢獻(xiàn)1條經(jīng)驗(yàn) 獲得超0個(gè)贊
圖片的順序放錯(cuò)了,所以問題是:第一幅圖里有一句話:客戶仍然可以通過該方法返回整型套接字句柄修改類的狀態(tài)……
- 3 回答
- 0 關(guān)注
- 1750 瀏覽
添加回答
舉報(bào)