Задали задачку, сделать движение фигур(объектов) с использованием наследования и полиморфизма. Со стороны ООП правильно ли она сделана?
Lapp
22.02.2009 21:32
Цитата(Client @ 22.02.2009 16:55)
сделать движение фигур(объектов) с использованием наследования и полиморфизма. Со стороны ООП правильно ли она сделана?
1. В головной объект введи процедуру
procedure Move(u,v: integer);
begin
Hide;
x:=u;
y:=v;
Show
end;
В наследниках ее НЕ переопределяй.
2. Объект Line характеризуй не абсолютным положением второй точки, а смещением от x,y (то есть типа размером и наклоном). То же самое с прямоугольником - укажи стороны (могут быть отрицательными).
Рисовать по-английски draw .
volvo
22.02.2009 21:35
Цитата
Со стороны ООП правильно ли она сделана?
Со стороны ООП - нет... Конструкторы не наследуются от предков к потомкам, поэтому надо в КАЖДОМ типе, содержащем виртуальный метод иметь свой конструктор. Иначе будешь иметь проблемы У тебя же ни в tochka, ни в pryam конструкторов нет.
Client
22.02.2009 21:57
Lapp, именно так я и хотел сделать, но из-за линии и прямоугольника передумал.