>>800
例えばの話、BとCの抽象クラスAが存在しなかったのなら、関数Dは
void D1(B * p)
void D2(C * p)
の2つ必要になる
処理内容がほぼ同じ関数を2つ記述しなければいけない