問題: 仮想関数はコンパイル時に呼ぶ関数が決まらない
struct C { virtual void func() { puts("C"); } }; struct D : public C { virtual void func() { puts("D"); } }; int main() { C* c = new D(); c->func(); // D::func }