![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
enumerated types...
istok © (2011-03-20 19:14:00)type
TMyType = (mt1, mt2, mt3,..... mt50);
var
mt: TMyType;
...
sozeof(mt) = 1 - почему? ведь он будет 1 если в TMyType помещать до 32х значений, а при 32+ должен быть болье, нет? или больше 32х низя?
sniknik (2011-03-20 20:27:00) [1]> если засунешь больше чем 255, то sozeof(mt) станет 2
так и представляю себе модули сплошь из "засунутых" туда mt... гигобайт на 10... ка продолжение. :)
на самом деле достаточно 1-го значения с указанным ord > 255.
TMyType = (mt1 = 256, mt2, mt3,..... mt50);
например
istok (2011-03-20 19:46:00) [2]понял, спасибо!
_Юрий (2011-03-20 19:42:00) [3]
> могу mt.. засунуть в него?
если засунешь больше чем 255, то sozeof(mt) станет 2
istok (2011-03-20 19:24:00) [4]в данном случае что 50 - понятно, а вообще сколько могу mt.. засунуть в него?
Германн (2011-03-20 19:22:00) [5]
> и влезет до 255 значений?
До 50. От 0 до 49.
istok (2011-03-20 19:21:00) [6]ок, и влезет до 255 значений?
Германн (2011-03-20 19:19:00) [7]
> sozeof(mt) = 1 - почему? ведь он будет 1 если в TMyType
> помещать до 32х значений
В переменную mt: TMyType; больше одного байта не запихнешь как не старайся.