Форум: "Основная";
Текущий архив: 2003.09.01;
Скачать: [xml.tar.bz2];
ВнизК-во елементов Найти похожие ветки
← →
Alibaba (2003-08-18 05:17) [0]Всем привет.
Я описал тип
type
TChange = (chRegular, chBegDate, chEndDate, chMassht, chDaysWeek, chDesc);
Как мне получить количество елементов в типе TChange?
В данном случае - 6.
Как мне получить эту цифру???
High(TChange) - нет.
Length(TChange) - нет.
Size(TChange) - нет.
Что еще попробовать?
← →
Ученик (2003-08-18 06:52) [1]Ord(High(TChange)) + 1
GetTypeData(TypeInfo(TChange))^.MaxValue + 1
← →
app (2003-08-18 07:36) [2]Alibaba © (18.08.03 05:17)
Low, High и Ord применимы к перечисляемым типам, но надо быть острожнее, поскольку High может быть не равен Ord, начиная с Д6.
Скажи для чего тебе это нужно и тогда может быть будет более квалифицированный совет.
Для непрерывного ряда формула следуюящая:
Length := Ord(High(Tip)) - Ord(Low(Tip)) + 1
← →
Skier (2003-08-18 09:06) [3]>Alibaba © (18.08.03 05:17)
> High(TChange) - нет.
Почему нет ?
Просто надо единичку прибавить поскольку chRegular это 0
(если привести), а не 1
← →
Anatoly Podgoretsky (2003-08-18 09:08) [4]Skier © (18.08.03 09:06) [3]
Этов частном случае!
TChange = (chRegular=1, chBegDate, chEndDate, chMassht, chDaysWeek, chDesc);
← →
Anatoly Podgoretsky (2003-08-18 09:08) [5]и еще сложнее
TChange = (chRegular=1, chBegDate, chEndDate, chMassht, chDaysWeek, chDesc=20);
← →
Skier (2003-08-18 09:11) [6]>Anatoly Podgoretsky © (18.08.03 09:08) [4]
> Это в частном случае!
Безусловно ! Кто же спорит ?!
Но автор спрашивает для своего конкретного типа
← →
Anatoly Podgoretsky (2003-08-18 09:18) [7]Для конкретного случая Ученик © (18.08.03 06:52) [1]
← →
Alibaba (2003-08-18 12:49) [8]Спасибо большое!
Сработало: N:=Ord(High(TChange)) + 1;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.09.01;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.014 c