Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

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; больше одного байта не запихнешь как не старайся.


Наверх

Титульная страница Поиск, карта сайта Написать письмо