Справочник функций и процедур Delphi: $MinEnumSize

  Навигация по первой букве:

A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z

  Навигация по категории:

Compiler directives, Directives, Keywords / Types, Variables, Constants / Functions, Procedures

  Реклама:

 

$MinEnumSize
Деректива компилятора
Устанавливает минимальную память, используемую для хранения перечислимых типов unit
  
1. {$MinEnumSize 1}

2. {$MinEnumSize 2}

3. {$MinEnumSize 4}

Google  
 
Описание
Директива компилятора $MinEnumSize устанавливает минимальный размер памяти, в байтах, которые будут иметь перечислимые типы.

По умолчанию установлено в 1 байт, таким образом, обеспечивая вместимость для 256 чисел.

Если вы превысите текущий размер памяти, на любое определение чересчур большое значений чисел (более чем 256), или, более вероятно, определение значений перечисления, превышающих 256, то используется больший размер памяти. Директива $MinEnumSize просто определяет минимальное число байтов для использования.
Примечания
$MinEnumSize эквивалентентна $Z.

В вашем коде она может быть установлена много раз.

Значением по умолчанию является $MinEnumSize 1.
Похожие команды
$Z  Устанавливает минимальную память, необходимую для держания в памяти перечислимых типов

 
Пример кода : Различные размеры перечислимых типов
type
  {$MinEnumSize 1}
  TCars1  = (Rover, Jaguar, Honda);    // Впишется в 1 байт
  TFruit1 = (Banana=255, Apple, Pear); // Превысит один байт

  {$MinEnumSize 4}
  TCars2  = (Ford, Nissan, Vauxhall);  // Теперь используется 4 байта
  TFruit2 = (Orange=255, Plum, Grape); // Теперь используется 4 байта

begin
  ShowMessage('Размер TCars1 = '+IntToStr(SizeOf(TCars1)));
  ShowMessage('Размер TFruit1 = '+IntToStr(SizeOf(TFruit1)));
  ShowMessage('Размер TCars2 = '+IntToStr(SizeOf(TCars2)));
  ShowMessage('Размер TFruit2 = '+IntToStr(SizeOf(TFruit2)));
end;
Размер TCars1 = 1
Размер TFruit1 = 2
Размер TCars2 = 4
Размер TFruit2 = 4
 


Copyright © 2004-2016 Delphi Sources (источник – "DelphiBasics.ru")
 


Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook