Вниз
Скачать: CL | DM;

Не могу понять суть такого рода объявлений   Найти похожие ветки 

← →
novill ©   (2006-08-09 15:51) [0]

var
Sz: record
  case Boolean of
    True: (L,H: DWord);
    False: (Value: Int64);
end;


или вот, например

 TVarRec = record
   case Byte of
     vtInteger:    (VInteger: Integer; VType: Byte);
     vtBoolean:    (VBoolean: Boolean);
     vtChar:       (VChar: Char);
     vtExtended:   (VExtended: PExtended);
     vtString:     (VString: PShortString);
     vtPointer:    (VPointer: Pointer);
     vtPChar:      (VPChar: PChar);
     vtObject:     (VObject: TObject);
     vtClass:      (VClass: TClass);
     vtWideChar:   (VWideChar: WideChar);
     vtPWideChar:  (VPWideChar: PWideChar);
     vtAnsiString: (VAnsiString: Pointer);
     vtCurrency:   (VCurrency: PCurrency);
     vtVariant:    (VVariant: PVariant);
     vtInterface:  (VInterface: Pointer);
     vtWideString: (VWideString: Pointer);
     vtInt64:      (VInt64: PInt64);
 end;


← →
clickmaker ©   (2006-08-09 16:06) [1]

упакованная структура. Места для нее выделяется по максимальному полю, а доступ для удобства по любому из полей


← →
Германн ©   (2006-08-09 16:09) [2]


> clickmaker ©   (09.08.06 16:06) [1]
>
> упакованная структура.

Пока ещё не упакованная. :-)


← →
clickmaker ©   (2006-08-09 16:18) [3]

ну аналог union в Си, короче.
Можно и целый инт64 прочитать, а можно младшее/старшее дв. слово. А размером она один инт64 и будет


← →
novill ©   (2006-08-09 16:30) [4]

То есть  case  тут имеет число формальное значение и просто оформляет  перчисление возможных вариантов обращения

Записи

var
Sz: record
  case byte of
   0: (L,H: DWord);
   1: (Value: Int64);
end;


,


var
Sz: record
  case byte of
    1: (L,H: DWord);
    0: (Value: Int64);
end;


Будут иметь одинаковый смысл. Я правильно понял?


← →
DiamondShark ©   (2006-08-09 16:33) [5]

правильно



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: -0.955 c
2-1154706686
Ivolg
2006-08-04 19:51
2006.08.27
Сокеты


2-1155026404
c10wn
2006-08-08 12:40
2006.08.27
поиск с помощью inputbox


15-1153778077
lakb/proxy/
2006-07-25 01:54
2006.08.27
Component и русский аналог


1-1152863944
vigo_
2006-07-14 11:59
2006.08.27
Выделение цветом строк в TDBGrid.


15-1154332832
data
2006-07-31 12:00
2006.08.27
Долго удивлялась)




   Наверх