По-моему, уже давно в дельфи все record'ы - packed record
Про packed есть в справке.
[Ответ]
Сообщение от p51x:
Про packed есть в справке.
Зачем вот так писать? В справке есть всё, вопрос не про справку задавали. Если уж не знаешь лучше промолчать, а не говорить "Почитай Help" или "В нете покопайся".
Теперь по теме:
По умолчанию хранение данных в Дельфи выровнено либо по слову (Word) либо по двойному слову (DWord) для того чтобы доступ к данным был более быстрым. Т.е. задав такую структуру:
Type
MyStruct = record
One: Byte;
Two: Byte;
End;
можно ожидать, что ее размер составит 2 байта, но на самом деле, в связи с выравниванием, размер записи будет составлять два Word. При добавлении зарезервированного слова packed размер типа будет именно столько, сколько задан, однако время доступа к данным при этом увеличится.
Вообще для увеличения скорости выполнения кода лучше вообще не пользоваться типами: Byte, Smallint, если не критично использование памяти. А лучше переменные объявлять 4 байтами, например Integer, DWord.
[Ответ]
от себя кину 5 копеек. удобно использовать packed record когда работаешь с устройствами или форматами файлов. Т.е. если какую либо важную структуру прочитаешь в то что предлагает дельфи по умолчанию неизвестно какая ахинея там окажется, а вот в packed получишь данные такими какие они есть, точнее скзать получиш, то что по идее должно быть в структуре, как в спецификации написано, на самом деле оно может быть совершенно по другому
.
[Ответ]