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

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

Как записать указатель на процедуру в масв?


Erik1 ©   (2005-06-02 18:12:00) 

Есть:
 TDataTo = procedure(Raw: TRaw; sCmd: TSendCmd) of object;

 RDevCall = record
   TyypID: Integer;
   Build: TDataTo;
 end;

TBuildXML = class
  procedure DataToM(Raw: TRaw; sCmd: TSendCmd);
...
end;

const
 XMLDevCall: Array[0..5] of RDevCall = (
  (TyypID: nModem; Build: TBuildXML.DataToM),
  (TyypID: nVorgukaart; Build: TBuildXML.DataToHost),
  (TyypID: nStaatIP; Build: TBuildXML.DataToIP),
  (TyypID: nTelefoniNumber; TBuildXML.Build: DataToTel),
  (TyypID: nCMTS; Build: TBuildXML.DataToCMTS),
  (TyypID: nDekooder; Build: TBuildXML.DataToDec));
Разумеется, что так компилироватся небудет. Как сделать с заменой типа Build на pointer тоже понятно. Есть другие варианты?


Юрий Зотов   (2005-06-02 22:28:00) [1]

> Erik1 ©   (02.06.05 19:54) [2]

При вызове можно делать приведение к TDataTo.


Erik1   (2005-06-02 19:54:00) [2]

Хотелось бы оставить TDataTo его более удобно вызывать.


Alexander Panov   (2005-06-02 19:00:00) [3]

Erik1 ©   (02.06.05 18:12)
Как сделать с заменой типа Build на pointer тоже понятно. Есть другие варианты?


А какие сомнения в приведении типов к Pointer?


Наверх

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