[問題] friend class 的問題
這是寫程式時,遇到的問題
我宣告兩個class,分別叫A_1, B_1
A_1是B_1的friend class
我在A_1裡放置B_1型態的指標,以存取B_1的成員
這是存取的方式
現在我再宣告兩個class,分別叫A_2,B_2
A_2繼承A_1,B_2繼承B_1
我想讓A_2存取B_1的成員
請問,有什麼好方法嗎???
下面這個方法除外
=> 不能在B_1裡,宣告A_2是friend class 或 function
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.193.76.190
※ 編輯: wudidog 來自: 123.193.76.190 (05/23 06:52)
推
05/23 08:50, , 1F
05/23 08:50, 1F
有試,只是不知道是不是你說的方式
因為code有點長,我用文字說明
B_1 裡有 int v_b這個 protected變數
A_1 裡有 B_1 *v_a這個 protected變數
有A_1裡的f_a()函數,可以存取v_a->v_b,這一定沒問題
但A_2裡的f_b()函數就無法存取v_a->v_b
compiler會 error說, B_1::v_b是protected
※ 編輯: wudidog 來自: 123.193.76.190 (05/23 09:46)
推
05/23 11:06, , 2F
05/23 11:06, 2F
推
05/23 12:29, , 3F
05/23 12:29, 3F
→
05/23 12:32, , 4F
05/23 12:32, 4F
→
05/23 12:33, , 5F
05/23 12:33, 5F
→
05/23 16:21, , 6F
05/23 16:21, 6F
→
05/23 16:22, , 7F
05/23 16:22, 7F
→
05/24 07:16, , 8F
05/24 07:16, 8F