Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.10;
Скачать: CL | DM;

Вниз

Опять про VarArrayCreate.   Найти похожие ветки 

 
AlexanderSK ©   (2003-02-26 15:53) [0]

V: Variant;
...
V := VarArrayCreate([0,10], тип_варианта);
TVarData(V).VType = (varArray + тип_варианта)

А как грамотно узнать, что V - это массив, и собственно из чего этот массив состоит?


 
Digitman ©   (2003-02-26 16:02) [1]

наличие флага varArray в прочитанном идентификаторе типа VType, собссно, и говорит, что вариантная переменная V в дан.момент инициализирована для хранения массива

поле "тип_варианта" указывает на тип элементов этого массива


 
AlexanderSK ©   (2003-02-26 16:07) [2]

>Digitman ©
Это понятно! А вот как не зная тип_варианта и того что это массив: во-первых понять что это массив, а во-вторых, какого он собственно типа?


 
Roma ©   (2003-02-26 16:16) [3]

>AlexanderSK © (26.02.03 16:07)

if VarIsArray(V) then
begin
// это массив

if not VarIsEmpty(V) and not VarIsNull(V) then
begin
// этот массив не пустой

DimCount := VarArrayDimCount(V); // это размерность массива
for i := 1 to DimCount do
begin
// определяем типы элементов массива
case VarType(V, VarArrayLowBound(V, i)) of
end;
end;
end;
end;


Код чисто для примера, не проверялся... Чаще F1 нажимай...



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

Текущий архив: 2003.03.10;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.011 c
1-29805
Шурик Ш
2003-02-27 18:15
2003.03.10
А можно ли выровнять колонку StringGrid а по правому краю?


14-30131
мазафакер
2003-02-11 16:17
2003.03.10
помогите со сниффером


3-29708
alex_bredin
2003-02-18 16:04
2003.03.10
TQRPreview


3-29732
Max79
2003-02-19 11:20
2003.03.10
Хотелось бы реализовать сортировку по возрастанию и убыванию


1-29901
Makhanev A.S.
2003-02-26 05:50
2003.03.10
Access violation в приведённом ниже коде. В чём ошибка?