Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как правильно переопределить конструктор? [D6, Win2k]


SergeyVP ©   (2002-03-21 11:45:00) 


MyForm = class(TForm)
....
constructor Create(AOwner: TComponent; MyParam: integer);
....

на этой строке компилятор предупреждает:
Method "Create" hides virtual method of base type "TCustomForm"
Как правильно переопределить конструктор?


Юрий Зотов   (2002-03-21 14:34:00) [1]

Конечно, reintroduce.


kull   (2002-03-21 12:55:00) [2]

В этом случае лучше использовать диррективу reintroduce см. help...


Hooch   (2002-03-21 12:18:00) [3]

можно так :

type
TForm1 = class(TForm)
private
{ Private declarations }
public
constructor MyCreate(AOwner : TComponent; A : integer); virtual;
end;

var
Form1: TForm1;

implementation

{$R *.dfm}


{ TForm1 }

constructor TForm1.MyCreate(AOwner: TComponent; A: integer);
begin
inherited Create(AOwner);
end;


reonid   (2002-03-21 12:14:00) [4]

Сделай конструктор с другим именем - и всех делов.


McSimm   (2002-03-21 12:04:00) [5]

Только в этом случае придется использовать такой же список параметров, как и в базовом классе, поэтому MyParam придется убрать


drpass   (2002-03-21 11:48:00) [6]

constructor Create(AOwner: TComponent; MyParam: integer);override;


Наверх

Титульная страница Поиск, карта сайта Написать письмо