Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];




Вниз

Как узнать тип переменной? 


abstek   (2002-03-30 10:42) [0]

В процедуру MyProc передаётся одна из переменных: myStr10, myStr11, myStr12, myStr20, myStr21, myStr22.
Требуется в процедуре MyProc узнать тип переменной MyVar - это TMyStr1 или TMyStr2? Как это сделать по уму?


...
Type
TMyStr1 := type string;
TMyStr2 := tupe string;
...
var
myStr10, myStr11, myStr12 : TMyStr1;
myStr20, myStr21, myStr22 : TMyStr2;

...

procedure MyProc(var MyVar: variant);
begin
...

...

end;



Gurban   (2002-03-30 11:13) [1]

Попробуй сделать так:

if MyVar is TMyStr1 then что-нибудь;
if MyVar is TMyStr2 then что-нибудь другое;



Anatoly Podgoretsky   (2002-03-30 11:43) [2]

Gurban © (30.03.02 11:13)
С каких пор is можно применять к обычным переменным



abstek   (2002-03-30 11:56) [3]

На строку


if MyVar is TMyStr1 then ...;

компилятор ругается, что оператор и операнд не совместимы. Т.е. "is" применяется только для классов.



abstek   (2002-04-01 11:48) [4]

Неужели задача неразрешимая?



Виктор Щербаков   (2002-04-01 11:51) [5]

Реализуй два варианта функции MyProc c разными типами параметра.



Alx2   (2002-04-01 11:58) [6]

>abstek © (01.04.02 11:48)
посмотри директиву overload. Авось спасет :)




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.026 c
14-32950          kaif                  2002-03-02 11:30  2002.04.11  
Предлагаю обсудить подходы: БД,


3-32667           AndrewK               2002-03-20 08:41  2002.04.11  
Drag and Drop


7-32997           Zmey                  2002-01-17 06:15  2002.04.11  
помогите с TRichEdit


1-32895           ppcat                 2002-03-24 17:52  2002.04.11  
Version Information


7-32987           Serghei               2002-01-18 09:47  2002.04.11  
Volume Serial Number для дискеты???