Главная страница
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.064 c
15-1335892821
Jeer
2012-05-01 21:20
2013.03.22
Отдых, как продолжение работы.


15-1334694230
Дмитрий С
2012-04-18 00:23
2013.03.22
Дельфи не может перезаписать EXE файл.


1-1298637110
evgeso
2011-02-25 15:31
2013.03.22
После закрытия Ошибка Invalid Pointer Operation


15-1330547402
Юрий
2012-03-01 00:30
2013.03.22
С днем рождения ! 1 марта 2012 четверг


15-1348467779
alexdn
2012-09-24 10:22
2013.03.22
phpbb