8/28/2008

多型的陷阱

class A {...};
class B {...};
class C: public A, private B {...};

A a = new C();
B b = new C();
在C++中,繼承有public, protected and private
如果使用private的話 第6行編譯是不會過的 因為privated下是看不到的
如果是protected 則在可視scope下才能用

這點是java或其他OO語言沒有的

2 則留言:

Unknown 提到...

這也是面試被問到的問題嗎?
我覺得C++要考倒人實在太簡單了...

Lui 提到...

嗯 一間外商遊戲公司
它是第一間考倒我的