Упаковка и распаковка массивов |
Вверх Предыдущий Следующий |
Массивы могут быть упакованы (или побитно упакованы (bitpacked)) и распакованы. Два типа массива, у которых одинаковый диапазон допустимых индексов и тип элементов, но которые по-разному упакованы, не являются совместимым для присвоений. Однако, возможно преобразовать нормальный массив в побитно упакованный массив процедурой pack (упаковки). Обратная операция также возможна; побитно упакованный массив может быть преобразован в обычно упакованный массив, используя процедуру unpack (распаковки), как в следующем примере: Var foo : array [ 'a'..'f' ] of Boolean = ( false, false, true, false, false, false ); bar : packed array [ 42..47 ] of Boolean; baz : array [ '0'..'5' ] of Boolean; begin pack(foo,'a',bar); unpack(bar,baz,'0'); end. Больше информации о подпрограммах pack (упаковки) и unpack (распаковки), можно найти в описании модуля system. |