![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Параметры [D7, XP]
hater © (2008-07-08 08:31:00)Добрый день! Подскажите пожалуйста как можно передать процедуре параметр любого типа а потом в процедуре определять тип ? Если можно не большой примерчик, буду очень благодарен. Спасибо.
Anatoly Podgoretsky (2008-07-08 11:41:00) [1]> hater (08.07.2008 10:43:08) [8]
А какая проблема?
Просто используй соответствующие типы - для данного случая нужен variant
Anatoly Podgoretsky (2008-07-08 11:40:00) [2]> hater (08.07.2008 10:16:05) [5]
Ну правильно делал.
Сергей М. (2008-07-08 10:53:00) [3]var
MyParameter: Variant;
..
MyParameter := Now;
case TVarData(MyvarData).VType of
..
varDate: ShowMessage(DateTimeToStr(MyParameter));
ЮЮ (2008-07-08 10:51:00) [4]> Нет, так не удобно будет. Вот сейчас голова кипит, немогу
> грамотно определить дату передали или дробное число. :(
Коль она (процедура) такая всеяднвя, не все ли ей равно? Дто она делает с этим ворохои разношерстных данных?
hater (2008-07-08 10:43:00) [5]
> Может быть будет удобнее кроме самой переменной передавать
> и тип праметра в процедуру?
>
Нет, так не удобно будет. Вот сейчас голова кипит, немогу грамотно определить дату передали или дробное число. :(
Тын-Дын (2008-07-08 10:37:00) [6]
> hater (08.07.08 08:31)
> Добрый день! Подскажите пожалуйста как можно передать процедуре
> параметр любого типа а потом в процедуре определять тип
> ? Если можно не большой примерчик, буду очень благодарен.
> Спасибо.
Может быть будет удобнее кроме самой переменной передавать и тип праметра в процедуру?
engine (2008-07-08 10:23:00) [7]> [5] hater (08.07.08 10:16)
Почитай в справке про тип TDateTime
hater (2008-07-08 10:16:00) [8]
> vtExtended
Ой, А я так определял дробные числа ...
Anatoly Podgoretsky (2008-07-08 09:29:00) [9]> hater (08.07.2008 9:22:03) [3]
vtExtended
hater (2008-07-08 09:22:00) [10]Мастера спасибо огромное, если не трудно, не могли бы вы подсказать как определить тип даты? Числа и строки получилось определить, вот с датой не могу разобраться.
case TVarRec(params[i]).VType of
vtInteger, vtInt64 :
ShowMessage(IntToStr(Params[i].VInteger));
vtAnsiString :
ShowMessage(Params[i].VPChar);
else
ShowMessage('Не определен');
end;
Loginov Dmitry (2008-07-08 08:38:00) [11]> а потом в процедуре определять тип
TVarRec(MyArray[Index]).VType
Anatoly Podgoretsky (2008-07-08 08:35:00) [12]const array of const