Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.03.22;
Скачать: CL | DM;

Вниз

Перегрузка метода   Найти похожие ветки 

 
Разведка   (2012-06-20 01:02) [0]

Уместно ли такая перегрузка?
Не будет ли она считаться хамской перегрузкой метода

type
 TFrmAddFiles = class(TForm)
   OpnDlg: TOpenDialog;
   LBoxAdd: TListBox;
 private
   { Private declarations }
 public
   procedure ShowModal; overload;
 end;

procedure TFrmAddFiles.ShowModal;
begin
 LBoxAdd.Clear;
 OpnDlg.Files.Clear;
 // А здесь вызываю метод предка
Tform(FrmAddFiles).ShowModal;
end;


 
Разведка   (2012-06-20 01:09) [1]

Tform(FrmAddFiles).ShowModal;
Где то читал, что такая конструкция вызова хамская, а в чем хамство?


 
Германн ©   (2012-06-20 01:47) [2]


> Где то читал, что такая конструкция вызова хамская, а в
> чем хамство?

В методе класса нельзя ссылаться на конкретный экземпляр класса по имени переменной.
P.S.
Это не хамство. Это малограмотность.


 
Разведка   (2012-06-20 02:17) [3]

Получается, самый корректный вариант вот так только?

....
function ShowModal: integer; overload;
...
function TFrmAddFiles.ShowModal: integer;
begin
 LBoxAdd.Clear;
 OpnDlg.Files.Clear;

 result := inherited ShowModal;

end;


 
Германн ©   (2012-06-20 02:21) [4]


> Разведка   (20.06.12 02:17) [3]
>
> Получается, самый корректный вариант вот так только?

А чем он не устраивает?


 
Плохиш ©   (2012-06-20 02:27) [5]


>  // А здесь вызываю метод предка
> Tform(FrmAddFiles).ShowModal;
>

Наивная простота. Попробуй книжку что ли почитать. Там и смысл оператора оверлоад описывается, и ещë инхерайтед также.


 
Anatoly Podgoretsky ©   (2012-06-20 07:24) [6]

> Разведка  (20.06.2012 01:02:00)  [0]

ShowModal виртуальная функция



Страницы: 1 вся ветка

Текущий архив: 2013.03.22;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.07 c
2-1340112867
lavren
2012-06-19 17:34
2013.03.22
Новый пользователь AD


15-1348432202
Юрий
2012-09-24 00:30
2013.03.22
С днем рождения ! 24 сентября 2012 понедельник


15-1337084520
Max
2012-05-15 16:22
2013.03.22
аналог AsProtect


15-1352093069
Kindle
2012-11-05 09:24
2013.03.22
Как сделать движение по траектории элиппса?


15-1332015528
>|<
2012-03-18 00:18
2013.03.22
Взаимодействие приложений