看板 C_and_CPP 關於我們 聯絡資訊
有二個問題請教 一、 class D:B { void foo(B const &b); } 像上面這樣D有個interface需要吃自己的base class 什麼情況需要(適合)這樣子的設計? 二、 class A {}; class B:A {}; class C:B { void foo(A const &a); } compiler會報錯,是說private繼承只能看到上一(only one)層的class嗎 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.137.10.147 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1422464992.A.6FF.html
carylorrk: 1.第一個想到 decorater 2.private inheritance 找不到 01/29 01:57
carylorrk: 外面看的 A,而是 B 繼承的 A。但是對於 B 以下的都不 01/29 02:08
carylorrk: 可存取。 void foo(::A const &a); 就可以了。 01/29 02:09
carylorrk: sorry, decorator 不應該是 private inheritance... 01/29 02:13
Arton0306: 感謝 01/30 22:18