Форум: "Начинающим";
Текущий архив: 2005.12.18;
Скачать: [xml.tar.bz2];
ВнизЧто означает данный параметр? Найти похожие ветки
← →
Новичек © (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;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.013 c