Форум: "Основная";
Текущий архив: 2004.08.29;
Скачать: [xml.tar.bz2];
ВнизПриведение левой части к типу Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.027 c