>>874
クラス 描画先
{
public:
 描画する(直線);
 描画する(円);
 描画する(円弧);
 描画する(図形)
 {
  assert(0);
 }
};

クラス 直線 : 図形
{
 上書 描画する(描画先)
 {
  描画先.描画する(this);
 }
};