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

Вниз

Интерфейсы и reinroduce   Найти похожие ветки 

 
mfender ©   (2006-10-10 15:42) [0]

Есть два класса:

 
 TmfXMLLogMemo = class(TCustomMemo, ImfXMLLogMemo)
 public
   procedure Log(Data: string); virtual;
 end;

 TmfXMLExtLog = class(TmfXMLLogMemo, ImfXMLExtLog)
 public
   procedure Log(Data: string; RecType: string); reintroduce;
 end;


И их интерфейсы:


 ImfXMLLogMemo = interface(IInterface)
 ["{985E3293-E06B-41EA-B28D-091FEA31804F}"]
   procedure Log(Data: string);
 end;

 ImfXMLExtLog = interface(ImfXMLLogMemo)
 ["{07656F85-3E51-48E6-A4E8-6B5F0238B047}"]
   procedure Log(Data: string; RecType: string);
 end;


Как сделать так, чтобы компилятор не ругался "Declaration of "Log" differs from declaration in interface "ImfXMLExtLog""? Объявить метод в интерфейсе (reintroduce) так же как в реализации пытался. В ответ получил "Unknown dirrective "reintroduce""... Что я опять не правильно делаю?


 
mfender ©   (2006-10-10 16:04) [1]

Ларчик просто открывался:


TmfXMLExtLog = class(TmfXMLLogMemo, ImfXMLExtLog)
public
  procedure Log(Data: string; RecType: string); overload;
end;


 
guav ©   (2006-10-10 16:05) [2]

  TmfXMLExtLog = class(TmfXMLLogMemo, ImfXMLExtLog)
  public
    procedure ImfXMLExtLog.Log = ExtLog;
    procedure ExtLog(Data: string; RecType: string);
  end;


 
mfender ©   (2006-10-10 16:18) [3]


> guav ©   (10.10.06 16:05) [2]

Классно! Спасибо! Даже не знал, что такое чудо можно в Delphi провернуть.



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

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

Наверх




Память: 0.47 MB
Время: 0.076 c
2-1160741357
_Mouse_
2006-10-13 16:09
2006.10.29
Вопрос по StringGrid


11-1136877665
BaryVetaL
2006-01-10 10:21
2006.10.29
Как преобразовать ICO которая находится в потоке в PBitmap?


2-1161019915
Block
2006-10-16 21:31
2006.10.29
BlockRead


3-1157016139
Erik1
2006-08-31 13:22
2006.10.29
Записать DataSet в параметр.


11-1128235367
Sniper17
2005-10-02 10:42
2006.10.29
А если перейти на SVN?