Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.08.27;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.08.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.054 c
4-1146597197
err0rFrost
2006-05-02 23:13
2006.08.27
изменение темы рабочего стола в ХР


9-1133725230
Click
2005-12-04 22:40
2006.08.27
Ищу урок


15-1154067265
Layner
2006-07-28 10:14
2006.08.27
Как в 2000/2003 включить логирование входов/выходов юзеров


3-1150575476
Glivera
2006-06-18 00:17
2006.08.27
Создание Alias a


15-1154018289
ronyn
2006-07-27 20:38
2006.08.27
Date change of File s





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский