ひさしぶりに『More Effective C++』を読んでいたら、面白いコードを発見したので紹介しておきます。 オブジェクト指向では、様々なオブジェクトを共通の基底クラスから派生させて、それらを基底クラスのポインタのリストで管理するというのはよく使うテクニックです。管理クラスは管理対象が具体的に何のクラスなのかは意識する必要がなく、基底クラスに用意された共通のインターフェースで指示を出せば、指示を出された側が自分で判断してふるまいを決めます。この性質をポリモーフィズムと呼びます。 More Effective C++の例を借用すると、宇宙船(SpaceShip)、宇宙ステーション(SpaceStation)、小惑星(Asteroid)を共通の基底クラスGameObjectから派生させると次のようになります。 class GameObject { ... }; class SpaceShi
![型情報を使わずに派生クラスを特定する - Tari Lari Run](https://cdn-ak-scissors.b.st-hatena.com/image/square/4fb6d9bfd090bd6c94d2149de63f4d552f0b6e43/height=288;version=1;width=512/https%3A%2F%2Fbygzam.up.seesaa.net%2FClassDiagram1.png)