Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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
3-1091783806
Diman
2004-08-06 13:16
2004.08.29
Импорт данных .txt, .dbf, .doc в Excel в Делфи 5-7


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


11-1079975222
DillerXX
2004-03-22 20:07
2004.08.29
Power


4-1089741238
ev
2004-07-13 21:53
2004.08.29
заглушка msgina.dll


1-1092219422
Zlodey
2004-08-11 14:17
2004.08.29
Управление компонентами формы из модуля данных





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский