1

プログラマーは継承よりも構成を好むべきだと言われています。コンポジションを使用して RTTI を簡単に実現できるかどうか疑問に思っていました。

4

1 に答える 1

0

私はおそらくあなたの問題を理解したと思いますが、あなたは間違った角度から問題に取り組んでいると思います. 継承ツリーでは、RTTI を使用してオブジェクトの型をチェックできますが、継承ツリーがない場合 (代わりに合成を使用) は、可能な型が 1 つしかないため、その必要はありません。次に、オブジェクトの「タイプ」を示すプロパティまたはメソッドを設定できますが、真の OOP ではタイプをチェックする必要はなく、ポリモーフィズムに処理させる必要があります。

複合オブジェクトでは、メソッド呼び出しはその子に転送されます。継承ツリーでは、メソッド呼び出しは仮想であり、派生クラスによって処理されます。

于 2013-04-04T16:21:31.620 に答える