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

Вниз

Приведение левой части к типу   Найти похожие ветки 

 
Cobalt ©   (2004-08-12 12:06) [0]

Увидел тут такую вот конструкцию:

if Win32Platform = VER_PLATFORM_WIN32_NT then
PWideChar(MSGBOXPARAMS.lpszIcon) := "MAINICON"
else
MSGBOXPARAMS.lpszIcon := "MAINICON";

(см.  http://delphimaster.net/view/4-1092250514/ )

Никогда с таким не сталкивался, что левую часть тоже можно приводить, обычно считал, что приводят только правую часть.

Скажите, в каких случаях удобнее использовать левосторонее приведение?


 
Sandman25 ©   (2004-08-12 12:08) [1]

Когда приводить левую часть удобнее, чем правую :)


 
Cobalt ©   (2004-08-12 12:16) [2]

Такая вот вещь:
1) Msg.lpszIcon:= PWideChar("MAINICON");
Не приводится (ну, это понятно - lpszIcon: PAnsiChar;)

2) PWideChar(Msg.lpszIcon):= "MAINICON";
Так приводится.

Выходит, что приведение левой части необходимо в тех случаях, когда необходимо в переменную некоего типа требуется положить данные другого формата. Так?


 
Sandman25 ©   (2004-08-12 12:19) [3]

Как насчет
1) Msg.lpszIcon:= PAnsiChar("MAINICON")?

Если
P: Pointer;
I: Cardinal;
то
1)Cardinal(P) := I;
2)P := Pointer(I);


 
Cobalt ©   (2004-08-12 12:31) [4]

2 Sandman25 ©   (12.08.04 12:19) [3]
1) А тогда иконка не показывается :) (см. ветку из WinAPI)

2) ИМХО, тут нагляднее будет такой пример:

var
arr: array[1..10] of byte;
FloatVar: Extended;
begin
 Extended(arr) := FloatVar;



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

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

Наверх




Память: 0.47 MB
Время: 0.047 c
14-1092229871
Дмитрий12
2004-08-11 17:11
2004.08.29
как запустить компонент панели управления


14-1092324345
Девушка
2004-08-12 19:25
2004.08.29
Настройка Unix


1-1092199337
Dim!S
2004-08-11 08:42
2004.08.29
Глобальное описание ini-файл


11-1080063843
Delphi5.01
2004-03-23 20:44
2004.08.29
Chem mojet bit vizvana oshibka: ExptIntf.dcu


6-1088613132
4ebyrab
2004-06-30 20:32
2004.08.29
Webbrowser??? Как нажать на банер???