Re: [請教] 請教strategy、state pattern in C++
※ 引述《iamstudent (stu)》之銘言:
: : 所有 State 都必須經由 BigClass 產生,
: : 保證資源除了 BigClass 與 State 以外,
: : 其他人都拿不到也看不到。
: : 這只是非常粗略的作法,不過大體上精神如此
: : 不知道這樣合乎你的要求否?
: 差不多完全是正解了
: 把所有資料移動到class Data裡面去
: State的Data*用protected就可以讓繼承state的子class使用
: 不過這邊又有一個問題
: class Data 不就又要friend所有繼承State的class?
: 或者class Data所有成員必須是public的?
: 就沒辦法friend一個class
: 然後其他繼承的class也都能夠享受這個friend的效果嗎?
不太懂你的問題....
Data 所有的欄位都是 public 有何不好?
並不是權限設成public就一定會曝露,
我的做法就是從資源的來源限制起,
目前除了BigClass與State,其他人根本看不到 Data,
那 Data 的欄位是 public/private又有什麼關係呢?
--
---- chchwy <批兔個人版> ptt2.cc
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.45.97.225
※ 編輯: chchwy 來自: 114.45.97.225 (04/23 20:11)
推
04/23 20:21, , 1F
04/23 20:21, 1F
→
04/23 20:22, , 2F
04/23 20:22, 2F
→
04/23 20:22, , 3F
04/23 20:22, 3F
討論串 (同標題文章)
OOAD 近期熱門文章
PTT數位生活區 即時熱門文章