タグ

ブックマーク / srad.jp/~bnez (1)

  • [C++] ポリシクラス | bnezの日記 | スラド

    使用者が複数の対象に同一の操作を行う状況を考える。操作に対する振る舞いが対象によって異なっているとき、この性質を多態性(polymorphism)という。C++は、動的多態性(dynamic polymorphism)と静的多態性(static polymorphism)の2つを扱う能力を備える。ポリシクラスは、静的多態性の実装手段のひとつである。 動的多態性は、実行時に解決される多態性である。C++では仮想関数が主な実装手段である。以下に例を示す。 class Base { public: virtual ~Base() throw() {} virtual void func() = 0; }; class DerivedA : public Base { public: virtual void func() { std::cout << "DerivedA" << std::end

    mogwaing
    mogwaing 2007/07/27
    静的、動的polymorphism
  • 1