![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
record или packed record [D7, XP]
wq © (2009-10-27 17:16:00)Подскажите новичку.
Есть две записи, которые объявлены так:
BirthDay1 = record
Day:Byte;
Mon:Byte;
Year:Word;
end;
BirthDay2 = packed record
Day:Byte;
Mon:Byte;
Year:Word;
end;
Вопрос какой из этих вариантов "правильнее". Интересует packed record. В каких случаях
следует использовать packed record, а в каких record?
Или подскажите где об этом можно почитать.
wq (2009-10-28 18:52:00) [1]
> Юрий Зотов
Огромное спасибо за краткий и внятный ответ.
Юрий Зотов (2009-10-27 18:20:00) [2]> wq (27.10.09 17:16)
В первом варианте поля выравниваются, а в настройках компилятора проставляется КАК они выравниваются. Если поля выравниваются на границу двойного слова, то запись займет 10 байт (4+4+2).
Во втором варианте поля НЕ выравниваются независимо от настроек компилятора. Поэтому запись займет 4 байта (1+1+2).
Второй вариант занимает меньше памяти, но первый быстрее работает. Что для Вас важнее - решать Вам.
wq (2009-10-27 17:28:00) [3]
> oldman
> sniknik
спасибо. Вопрос закрыт
sniknik (2009-10-27 17:24:00) [4]> "правильнее".
а, что "правильнее" - ехать на машине или идти пешком? если скажеш первое то мне нужно в соседнюю комнату, если второе то в соседний город...
oldman (2009-10-27 17:19:00) [5]
> Вопрос какой из этих вариантов "правильнее".
зависит от задачи
> Или подскажите где об этом можно почитать.
в учебнике