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

Вниз

Что означает данный параметр?   Найти похожие ветки 

 
Новичек ©   (2005-12-02 09:26) [0]

Уважаемые Мастера, объясните, пожалуйста, что означает Pointer(nil)^?
Я в недоумении :-(


 
Reindeer Moss Eater ©   (2005-12-02 10:07) [1]

Означает примерно следующее:  "поди туда, не знаю куда, принеси то, не знаю что"

В каком выражении это вообюще используется?


 
Новичек ©   (2005-12-02 10:10) [2]

Это взято из файла ScktComp.pas, поставляемого с исходниками Delphi/


 
icWasya ©   (2005-12-02 10:42) [3]

Ну а если посмотреть на двадцать строчек выше, то увидите, что если второй параметр равен минус один, то первый не используется.


 
Новичек ©   (2005-12-02 11:13) [4]

Да, я смотрел. Мне стало интересно, что же все-таки имелось в виду...


 
Плохиш ©   (2005-12-02 11:27) [5]


> Новичек ©   (02.12.05 11:13) [4]
> Да, я смотрел. Мне стало интересно, что же все-таки имелось
> в виду

Указатель на несуществующий буффер.


 
Новичек ©   (2005-12-02 11:32) [6]

А почему бы этот указатель просто не обнулить?


 
Reindeer Moss Eater ©   (2005-12-02 11:43) [7]

Какой же это указатель? Там же разыменование.

Это кусок памяти, расположенный нигде.


 
GuAV ©   (2005-12-02 12:06) [8]

передача var параметра с т.з. получаемого машинного кода иднетична передачи параметра-указателя.

Это - почти одно и то же:
procedure zzz(var X: Integer);
procedure zzz(X: PInteger);


Однако, во втором случае можно ещё передать nil.

Функции WinAPI объявляют вторым способам, если она может принять nil, иначе обычно первым способом.

Для передачи nil-указателя в var параметре используют Pointer(nil)^ . Заметьте, что разименование фактически не происходит, если оно указано для указателя, переданного var параметру, иначе код давал бы AV перед вызовом подпрограммы.



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

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

Наверх




Память: 0.48 MB
Время: 0.048 c
2-1133373971
dimka_sh
2005-11-30 21:06
2005.12.18
Разрешение экрана


4-1129819909
user-as
2005-10-20 18:51
2005.12.18
Робота в реэстрi без дозволу адміна з допомогою WinAPI


14-1132777064
NightLord
2005-11-23 23:17
2005.12.18
Связь ПО с ПК


4-1129824721
Эксперт
2005-10-20 20:12
2005.12.18
Вставить и растянуть рисунок на фон ListView


3-1130750025
GhostT
2005-10-31 12:13
2005.12.18
Как сделать так, чтобы некая строка из датасета