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

Обяъсните неграмотному Packed Record   Найти похожие ветки 

 
allucard   (2007-05-23 08:28) [0]

Доброго дня.

_IMAGE_IMPORT_DESCRIPTOR = packed record
case Integer of
 0:(
  Characteristics: DWORD);
 1:(
  OriginalFirstThunk:DWORD;
  TimeDateStamp:DWORD;
  ForwarderChain: DWORD;
  Name: DWORD;
  FirstThunk: DWORD);
 end;


Обьясните пожалуйста что даёт case в этой конструкции?


 
Однокамушкин   (2007-05-23 08:35) [1]

Поля, перечисленные под метками 0 и метками 1, занимают одну и ту же область памяти, т.е. к этой области памяти можно в зависимости от потребностей обращаться то как будто там лежит структура (Characteristics: DWORD), то как будто там лежит структура (OriginalFirstThunk:DWORD; TimeDateStamp:DWORD; ForwarderChain: DWORD; Name: DWORD; FirstThunk: DWORD).

В данном случае особой выгоды не просматривается... По набору полей нулевой вариант является подмножеством первого, разве что имена различаются...


 
allucard   (2007-05-23 08:49) [2]

в принципе идея ясна.

но как указать, какая структура мне нужна(0-я или 1-я)?


 
Однокамушкин   (2007-05-23 08:54) [3]


> но как указать, какая структура мне нужна(0-я или 1-я)?


А никак не надо указывать... Просто обращайтесь к полям той или иной структуры, а компилятор, он умный, разберётся... :)


 
allucard   (2007-05-23 08:58) [4]


> Однокамушкин   (23.05.07 08:54) [3]

спасиб.



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

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



Память: 0.45 MB
Время: 0.018 c
2-1179798888
delphino
2007-05-22 05:54
2007.06.10
Копирование набора Query в Table


2-1179403145
Dush
2007-05-17 15:59
2007.06.10
помогите с запросом


15-1179293278
31512
2007-05-16 09:27
2007.06.10
Опаньки!


15-1179317312
ArtemESC
2007-05-16 16:08
2007.06.10
На каком языке мыслите вы?


3-1174320576
alexey_mas
2007-03-19 19:09
2007.06.10
установка курсора




   Наверх