- C++相談室 part112
746 :デフォルトの名無しさん[sage]:2014/05/29(木) 07:53:14.37 ID:qoes3ia9 - >>743
コストが発生する、というのは確保の仕方でどうにでもなったね‥ adapter パターンでやってみると 派生:http://codepad.org/xFVOCdis 委譲:http://codepad.org/kAwpEdFl この例ではやっていることは同じだね 上の例では既存の Actual クラスがすでに存在する前提で、最初に本来あるべき内容の Spec クラスを先に書いた でも Actual クラスを使って Spec クラスの内容を実装したいために Adapter クラスを仲介として追加した 最後に Spec クラスでも Adapter クラス経由の Actual クラスでも同等に動くことを確認した 委譲の場合、仲介クラスであからさまに既存クラスのインスタンスを持つように書くが、 継承は、同じことなんだけれども、仲介クラスで既存クラスを抱合するように書くようだ、この場合は多重継承を使ってしまったが、ああ、純粋仮想関数にしないと Java では無理だね >>745 ごめんね
|
|