Вниз
Скачать: CL | DM;

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

 
Erik1 ©   (2005-06-02 18:12) [0]

Есть:
 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 тоже понятно. Есть другие варианты?


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

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


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


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

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


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

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

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



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.023 c
1-1118129890
ORMADA
2005-06-07 11:38
2005.06.29
DragDrop


14-1117223390
Gamer
2005-05-27 23:49
2005.06.29
Слабый сигнал. Мобила.


1-1117618929
a80h19
2005-06-01 13:42
2005.06.29
Полиморфизм для переменной


9-1111326224
BREVIS
2005-03-20 16:43
2005.06.29
Где взять документацию по GLScene?


14-1117610965
Skier
2005-06-01 11:29
2005.06.29
Построение буферной зоны.




   Наверх