なぜC++はあんなに難しいのか?

このエントリーをはてなブックマークに追加
>>624
逃げとしての一例をあげれば、class Fax と class Phone があって
それぞれインターフェースではなく実装付きで定義されている場合に、
多重継承を使わずに FaxPhone を作れと言われたらどっかで委譲することになる。
Java では実装の多重継承はできないし、
C++ でもライブラリの制限でダメということがある(C++BuilderのVCL)。
626デフォルトの名無しさん:01/09/15 19:24
>>623
漏れはむしろ逆だな。
委譲するのが適当でない、と思われるときに継承を使う。
実装上、そのほうが楽になることが多い気がするから。

>>625
既存の(自作でない)class Faxとclass Phoneがある場合は、そうかも。
FaxPhoneとして使うことを想定していないFaxなりPhoneを基底クラスと
して採用することは不適当と思う。意図せずに(副産物として)作られた
汎用基底クラスなんて信用ならない。将来的に破綻しそうな気がするしな。