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

Вниз

Создание класса на основе TIdHTTP   Найти похожие ветки 

 
Nucer   (2009-10-19 19:45) [0]

Хочу создать класс на основе TidHTTP немного изменив конструктор (всего лишь дополнительная инициализация некоторых параметров).

THTTPClient = class(TIdHTTP)
public
 constructor Create(CookieManager: TIdCookieManager = nil); override;
end;

constructor THTTPClient.Create(CookieManager: TIdCookieManager = nil);
begin
 inherited Create(nil);
 if Assigned(CookieManager) then Self.CookieManager := CookieManager;
 Self.Request.UserAgent := "Tool";
 ...
end;


В итоге получаю warning:
Method "Create" hides virtual method of base type "TIdCustomHTTP"

Что сделано не так? Как исправить? Или на ошибку не стоит обращать внимания?


 
DVM ©   (2009-10-19 20:05) [1]


> Как исправить?

override убрать?


 
Nucer   (2009-10-19 20:10) [2]

Прошу прощения, с override вообще не компилируется (забыл убрать перед копирование на форум после очередной проверки).

Вот так получаю warning:
THTTPClient = class(TIdHTTP)
public
constructor Create(CookieManager: TIdCookieManager = nil);
end;


Если добавить reintroduce, то предупреждения уже нет:
THTTPClient = class(TIdHTTP)
public
constructor Create(CookieManager: TIdCookieManager = nil); reintroduce;
end;


К reintroduce можно добавить еще и overload (с первого взгляда ни на что не влияет, компилируется и работает без ошибок), но я не знаю, как именно в этой ситуации будет правильно.


 
Nucer   (2009-10-19 20:17) [3]

Понял, overload не надо... В противном случае можно будет использовать оба конструктора.


 
DVM ©   (2009-10-19 20:19) [4]


> Nucer

Разберитесь с этими словами override, overload, virtual, dynamic, reintroduce - все проблемы сразу отпадут. Описаны в любой хорошей книжке.


 
Anatoly Podgoretsky ©   (2009-10-19 22:47) [5]

> Nucer  (19.10.2009 20:10:02)  [2]

Зависит от того, что ты хочешь сделать, если скрыть то правильно, если нет то только создание конструктора с другим именем.



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

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

Наверх




Память: 0.48 MB
Время: 0.01 c
15-1254730781
Артур. В
2009-10-05 12:19
2009.12.06
Как загрузить хтмл код с данного юрл?


2-1255949658
night_light
2009-10-19 14:54
2009.12.06
не отображается метка у TLabeledEdit


15-1254688209
Юрий
2009-10-05 00:30
2009.12.06
С днем рождения ! 5 октября 2009 понедельник


2-1256036827
Pascal96
2009-10-20 15:07
2009.12.06
Задачка на Pascal


2-1255601991
Игорь85
2009-10-15 14:19
2009.12.06
dbgring в excel