Заголовок и стандартные директивыDelphi , Компоненты и Классы , Процедуры и ФункцииЗаголовок и стандартные директивыЗаголовок процедуры имеет вид: PROCEDURE <имя> [(<сп.ф.п.>)]; Заголовок функции: FUNCTION <имя> [(<сп.ф.п.>)]: <тип>; Здесь <имя> - имя подпрограммы (правильный идентификатор); <сп.ф.п.> - список формальных параметров; <тип> - тип возвращаемого функцией результата. Сразу за заголовком подпрограммы может следовать одна из стандартных директив assembler, external, far, forward, inline, interrupt, near. Эти директивы уточняют действия компилятора и распространяются на всю подпрограмму и только на нее, т. е., если за подпрограммой следует другая подпрограмма, стандартная директива, указанная за заголовком первой, не распространяется на вторую.
Помимо описанных в Object Pascal можно использовать также стандартные директивы, регламентирующие способ передачи параметров через стек и использование регистров для их передачи - такие директивы используются при работе с ядром Windows. Они перечислены в приводимой ниже таблице. Графа порядок определяет порядок размещения параметров в стеке: слева направо означает размещение в стеке по порядку описания - сначала первый параметр, затем второй и т. д.; справа налево означает размещение с конца перечисления параметров - сначала последний, затем предпоследний и т. д. Графа Очистка определяет, кто будет очищать стек: подпрограмма перед передачей управления в вызывающую программу или программа после получения управления. Графа регистры содержит да, если для передачи параметров помимо стека используются также регистры центрального процессора. Таблица 8.1. Стандартные директивы, регламентирующие способ передачи параметров через стек и использование регистров для их передачи Директива Порядок Очистка Регистры safecall Справа налево Подпрограмма Нет Stdcall Справа налево Подпрограмма Нет Cdecl Справа налево Программа Нет Pascal Слева направо Подпрограмма Нет Register Слева направо Подпрограмма Да Примечание Все фуйкции API ядра Wmdows;скомпилированы .в режиме stidcall, а те, что доддерживают технологию СОМ - в режиме sаfеса11. В статье описаны заголовок и стандартные директивы в Object Pascal, которые используются для определения процедур и функций, а также для уточнения действий компилятора. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: Процедуры и Функции ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |