3 回答

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

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