|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
Лень писать примитивные методы.
Вот тебе сами классы, а методы допишешь сам. Зачем нужен для данного класса деструктор - я не знаю Тут то дефолтный конструктор нафиг не нужен. Базовый класс: Код:
unit ComplexNumber; interface type TComplexNumber = class private FRe : Integer; FIm : Integer; public constructor Create; overload; constructor Create(ARe, AIm : Integer); overload; constructor Copy(ANumber : ComplexNumber); procedure Add(ANumber : TComplexNumber); procedure Dex(ANumber : TComplexNumber); procedure Mult(ANumber : TComplexNumber); overload; procedure Mult(ANumber : Integer); overload; procedure Div(ANumber : TComplexNumber); overload; procedure Div(ANumber : Integer); overload; property Re : Integer read FRe write FRe; property Im : Integer read FIm write FIm; end; implementation constructor TComplexNumber.Create; begin inherited; FRe := 0; FIm := 0; end; constructor TComplexNumber.Create(ARe, AIm : Integer); begin inherited Create; FRe := ARe; FIm := AIm; end; constructor TComplexNumber.Copy(ANumber : ComplexNumber); begin inherited Create; FRe := ANumber.FRe; FIm := ANumber.FIm; end; // Остальные методы - сам, по подобию конструкторов, только inherited не вызывай end; Потомок: Код:
unit AdvComplexNumber; interface uses ComplexNumber; type TAdvComplexNumber = class(TComplexNumber) public function Abs : Double; function Arg : Double; procedure Power(AValue : Integer); end; implementation funcrtion TAdvComplexNumber.Abs : Double; begin Result := Sqrt(Sqr(Re) + Sqr(Im)); end; funcrtion TAdvComplexNumber.Arg : Double; begin Result := Arctan(Re/Im); // Если не ошибаюсь end; procedure TAdvComplexNumber.Power(AValue : Integer); begin // тоже лень расписывать реализацию end; end; С остальным может еще кто поможет... Последний раз редактировалось lmikle, 23.11.2022 в 03:32. |
Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
NeField (02.12.2022)
|