[問題] 物件內的物件...彼此溝通的方法?

看板C_and_CPP作者 (Liar)時間16年前 (2009/06/23 16:06), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串1/8 (看更多)
請問假若我有Class A, Class B, Class C, Class D 彼此沒有繼承關係,而是在Class A中有Class B的object (在A內 new一個B) Class B內new出一個Class C的object Class C內new出一個Class D的object 假若今天Class B, C, D都可能要去call Class A的某個function來改變A的某變數值 或是Class A可能去call Class D的某個function來改變D的某變數值 請問有哪些比較好的做法呢? (或假若不止A,B,C,D...可能有個十層這樣的關係) 最普通的方式是在A內new B時,把A轉成pointer傳到B去,B保留一個指向A的pointer 同樣地在B new C時,繼續把A轉成pointer傳到C去.....類似地一層層傳到最內層 但有更好的方法嗎? 謝謝! (否則若當D要call C或B...代表D同時得擁有A,B,C的指標) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.193.5.4

06/24 00:12, , 1F
設計八成有問題,不知你要做啥,也許該看些design patern書
06/24 00:12, 1F
文章代碼(AID): #1AGFsTBZ (C_and_CPP)
討論串 (同標題文章)
以下文章回應了本文
完整討論串 (本文為第 1 之 8 篇):
文章代碼(AID): #1AGFsTBZ (C_and_CPP)