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

Параметры   Найти похожие ветки 

 
hater   (2008-07-08 08:31) [0]

Добрый день! Подскажите пожалуйста как можно передать процедуре параметр любого типа а потом в процедуре определять тип ? Если можно не большой примерчик, буду очень благодарен. Спасибо.


 
Anatoly Podgoretsky ©   (2008-07-08 08:35) [1]

const array of const


 
Loginov Dmitry ©   (2008-07-08 08:38) [2]

> а потом в процедуре определять тип


TVarRec(MyArray[Index]).VType


 
hater   (2008-07-08 09:22) [3]

Мастера спасибо огромное, если не трудно, не могли бы вы подсказать как определить тип даты? Числа и строки получилось определить, вот с датой не могу разобраться.

 case TVarRec(params[i]).VType of
  vtInteger, vtInt64 :
    ShowMessage(IntToStr(Params[i].VInteger));
  vtAnsiString :
    ShowMessage(Params[i].VPChar);
  else
    ShowMessage("Не определен");
 end;


 
Anatoly Podgoretsky ©   (2008-07-08 09:29) [4]

> hater  (08.07.2008 9:22:03)  [3]

vtExtended


 
hater   (2008-07-08 10:16) [5]


> vtExtended


Ой, А я так определял дробные числа ...


 
engine ©   (2008-07-08 10:23) [6]

> [5] hater   (08.07.08 10:16)

Почитай в справке про тип TDateTime


 
Тын-Дын ©   (2008-07-08 10:37) [7]


> hater   (08.07.08 08:31)  
> Добрый день! Подскажите пожалуйста как можно передать процедуре
> параметр любого типа а потом в процедуре определять тип
> ? Если можно не большой примерчик, буду очень благодарен.
>  Спасибо.


Может быть будет удобнее кроме самой переменной передавать и тип праметра в процедуру?


 
hater   (2008-07-08 10:43) [8]


> Может быть будет удобнее кроме самой переменной передавать
> и тип праметра в процедуру?
>


Нет, так не удобно будет. Вот сейчас голова кипит, немогу грамотно определить дату передали или дробное число. :(


 
ЮЮ ©   (2008-07-08 10:51) [9]

> Нет, так не удобно будет. Вот сейчас голова кипит, немогу
> грамотно определить дату передали или дробное число. :(


Коль она (процедура) такая всеяднвя, не все ли ей равно? Дто она делает с этим ворохои разношерстных данных?


 
Сергей М. ©   (2008-07-08 10:53) [10]

var
 MyParameter: Variant;
..
MyParameter := Now;

case TVarData(MyvarData).VType of
..
varDate: ShowMessage(DateTimeToStr(MyParameter));


 
Anatoly Podgoretsky ©   (2008-07-08 11:40) [11]

> hater  (08.07.2008 10:16:05)  [5]

Ну правильно делал.


 
Anatoly Podgoretsky ©   (2008-07-08 11:41) [12]

> hater  (08.07.2008 10:43:08)  [8]

А какая проблема?
Просто используй соответствующие типы - для данного случая нужен variant



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

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



Память: 0.47 MB
Время: 0.01 c
2-1208861820
DJ Kondakov
2008-04-22 14:57
2008.08.10
Окно поверх всех окон


15-1213898858
Knight
2008-06-19 22:07
2008.08.10
Железячники, что можно установить на MB Asus A7V600-X ?


15-1214131594
u4b
2008-06-22 14:46
2008.08.10
Свечение текста


15-1214220865
Правильный-Вася
2008-06-23 15:34
2008.08.10
ожидает ли Висту судьба Миллениума?


15-1214124455
Book
2008-06-22 12:47
2008.08.10
Delphi Book




   Наверх