Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.11;
Скачать: CL | DM;

Вниз

Использование директивы absolut   Найти похожие ветки 

 
pasha_golub ©   (2004-04-23 14:10) [0]

Есть процедура:

procedure VGradientFill(ACanvas: TCanvas; ARect: TRect;
         FromColor, ToColor: TColor);
var
 FC: array [0..3] of byte absolute FromColor;
 TC: array [0..3] of byte absolute ToColor;
...


Массивы FC, TC объявлены для удобства. Потому как в процедуре часто идет доступ непосредственно к каждому компонту цвета (RGB).

Однако, имеется мнение (не мое), что такая конструкция плохо переносится на последующие версии и плохо читаема.

1. Попрошу объяснить так ли это? Желательно с цитатами из хелпа 7 или 8 версии.
2. Какйо подоход ближе вам:
а) через асболют
б) через
 
  type
   TMixedType = packed record
    case boolean of
     False: {Color: TColor);
     True: {R,G,B,Ext: byte};
    end;

в) либо танцы с shr & shl
Спасибо


 
Тимохов ©   (2004-04-23 14:12) [1]

1.вряд ли смогу
2.в)+and


 
Palladin ©   (2004-04-23 16:34) [2]

1 частично так... директива absolute является unsafe, и скорее всего упразднена в d8
2 case в record тоже является unsafe, но скорее всего вру, лучьше почитать первоисточник

танцы надежней


 
pasha_golub ©   (2004-04-26 11:37) [3]

Спасибо, но цитаты из хелпа были бы интересней.



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

Текущий архив: 2004.04.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.03 c
14-1079354262
Карелин Артем
2004-03-15 15:37
2004.04.11
Блок-схема по ГОСТу


14-1082123506
juiceman
2004-04-16 17:51
2004.04.11
Помогите найти Ketmara


1-1082467995
Ultr
2004-04-20 17:33
2004.04.11
Функция в DLL с типизированным результатом?????


1-1082404346
Yong
2004-04-19 23:52
2004.04.11
Как получить параметр командной строки?


1-1082959287
Alexander
2004-04-26 10:01
2004.04.11
Динамическое создание меню: возникла необходимость создания меню