Тема 2.7 Создание пользовательских библиотек процедур и функций



    1. Понятие и виды программ

    2. Особенности описания и использования процедур и функций

    3. Создание и использование библиотек программ

Понятие и виды подпрограмм

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

    Преимущества использования подпрограмм очевидны.

Подпрограммы решают три важные задачи:

-Разделение некоторой общей задачи на несколько меньших по объему и сложности частных задач

-Уменьшение объема программы за счет многократного применения типовых программных действий, программируемых один раз в виде отдельной процедуры или функции

-Универсализации программных модулей - по возможности решение частной задачи обобщается, чтобы его можно было использовать при решении других задач.

    Подпрограммой называют самостоятельный фрагмент программы, оформленный особым способом и снабженный именем. Подпрограммы в языке ВР реализованы в виде процедур и функций.

    Подпрограмма - это небольшая программа, которая решает часть общей задачи. В языке Delphi есть два вида подпрограмм, различающихся назначение и способом их использования - процедура и функция.

    У каждой подпрограммы есть имя, которое используется в программе для вызова подпрограммы (процедуры).

    отличие функции от процедуры состоит в том, что с именем функции связано значение, поэтому функцию можно использовать в качестве операнда выражения, например, инструкции присваивания.

    Как правило, подпрограмма имеет параметры. Различают формальные и фактические параметры.

    Параметры, которые указываются в объявлении функции, называются формальными. Параметры, которые указываются в инструкции вызова процедуры, называются фактическими.

    Параметры используются:

    -для передачи данных в подпрограмму;

    -для получения из результата подпрограммы.

    В общем случае в качестве фактического параметра процедуры можно использовать выражение, тип которого должен совпадать с типом соответствующего формального параметра.

 

Особенности описания и использования процедур и функций

    Функция - это подпрограмма, т.е. последовательность инструкций, имеющая имя.

    Процесс перехода к инструкциям функции называется вызовом функции или обращением к функции. Процесс перехода от инструкций функции к инструкциям функции, вызвавшей функцию, называется возвратом функции.

    В общем виде инструкция обращения к функции выглядит так:

    Переменная:=Функция (Параметры);

    Следует обратить внимание на то, что:

    -каждая функция возвращает значение определенного типа,

    поэтому тип переменной, которой присваивается значение      

    функции, должен соответствовать типу функции;

    -тип и количество параметров для каждой конкретной функции строго     определены.

Объявление функции в общем выглядит следующим образом:

 

function Имя (параметр1 : тип1,..., параметрК : типК):Тип;

var

//здесь объявления локальных переменных

begin

//здесь инструкции функции

Имя :=Выражение;

end;

 

    Последовательность инструкций, реализующих его функцию, обязательно должна завершатся функцией, которая присваивает значение имени функции. Тип выражения, определяющего значение функции, должен совпадать с типом функции, указанным в ее объявлении.

    В общем виде объявление процедуры выглядит следующим образом:

    procedure Имя (var параметр1 :тип1; ... var параметрК: типК);

    var

    //здесь объявление локальных переменных

    begin

    //здесь инструкции процедуры

    end;

    Параметры процедуры используются для передачи данных в процедуру, а также для возврата данных из процедуры в вызывающую ее программу.

    Разработанная процедура должна быть помещена в раздел implementation, перед подпрограммой, которая использует эту процедуру.

    Инструкция вызова процедуры в общем виде выглядит так:

    Имя (Список Параметров);

    Фактическим параметром, в зависимости от описания формального параметра в объявлении процедуры может быть переменная, выражение или константа соответствующего типа.

    Если в описании процедуры перед именем параметра стоит слово var, то при вызове процедуры на месте соответствующего параметра должна стоять переменная основной программы. Использование константы или выражения считается ошибкой, и компилятор в этом случае выведет сообщение: Types of actual and formal var parameters must be identical (ТИП фактического параметра должен соответствовать типу формального параметра).


Дата добавления: 2018-04-05; просмотров: 632; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!