Еще раз привет всем экспертам! Тут такая идейка у меня (по моему бредовая) Ответьте реально ли это, или мне пора спать :) Создаем такое: type TAB=record pole1:string;pole2:integer;end; ----//--------------- function fn1(.........):TAB; begin .....end; -----------ну до этого вроде понятно---------- а далее: Как результат возвращаемый ф-цией дифференцировать на 2 переменные. Днем может и соображу, но надо срочняк... Поконкретнее плз.;) Да, и как это будет передаваться через стек? Спасибо!
Добрый день, Andrew! Вообще-то, в ObjectPascal применена другая технология вызова функций, в частности изменён принцип передачи параметров, изменён принцип возврата результата функции, добавлена переменная Result, имеющая тип, такой же, как и тип возвращаемого функцией значения. Поэтому, чтобы вернуть структуру, тебе придётся просто заполнить поля переменной Result. Через стек это передаётся тривиально: вызывающая процедура в стеке выделяет блок под временную структуру, а вызываемая функция работает с ней, как если бы ей была передана переменная. А вообще, есть чудесная комбинация: Alt+V,D,C. В окне CPU видно всё.
Приложение: Ответ отправлен: 11.07.2002, 12:07 Отправитель: Артём Шегеда
Форма отправки вопроса
Внимание!
Форма может работать некорректно в почтовых программах "Microsoft Outlook"
и "Microsoft Outlook Express". В программе The Bat!
подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте,
что в некоторых браузерах могут стоять запреты на открытие других
окон, а также "чрезмерное" кэширование данных,
при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet
Explorer 5.0+ или отправлять вопросы с сайта по адресу:
http://rusfaq.ru/cgi-bin/Message.cgi.