Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
методичка- програм ХалЗР.doc
Скачиваний:
5
Добавлен:
01.04.2025
Размер:
252 Кб
Скачать
☆
  1. Модуль пользователя

Модуль состоит из следующих частей:

  • заголовок модуля;

  • интерфейсная часть модуля;

  • исполняемая часть модуля;

  • инициализирующая часть модуля.

Заголовок модуля имеет вид:

unit имя модуля;

Например: unit MyModul;

Модуль должен быть помещен в файл, имя которого совпадает с именем модуля, а его расширение должно быть .pas.

Через интерфейсную часть осуществляется взаимодействие основной программы с модулем (или модуля с модулем). Интерфейсная часть является обязательной и начинается словом interface. Далее после слова uses могут быть указаны имена других модулей, используемых данным модулем. После этого записываются описания констант, типов, переменных, процедур и функций, которые могут быть использованы основной программой (модулем) при вызове этого модуля. При описании процедур и функций указываются лишь их заголовки, сами подпрограммы приводятся в исполняемой части модуля.

Исполняемая часть модуля также является обязательной и включает описание всех подпрограмм модуля. Она начинается словом implementation. Затем после слова uses указываются имена модулей, используемых подпрограммами данной исполняемой части. Если какой-то модуль уже указан в интерфейсной части, то в исполняемой части его повторять не следует. Далее могут быть: описание локальных меток, констант, типов, переменных, затем описываются подпрограммы модуля. При описании подпрограмм в исполняемой части допустимо использовать сокращенные заголовки.

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

Например: begin assign(f,’file.dat’);

end.

Операторы инициализирующей части выполняются в момент запуска программы. Если инициализация модуля не нужна, то в инициализирующей части модуля записывается лишь слово end, после которого следует точка.

Для использования констант, типов, переменных, подпрограмм, описанных в интерфейсе модуля, в основной программе (или другом модуле) следует записать слово uses и имя модуля. Если используемый идентификатор элемента модуля совпадает с идентификатором использующей его программы, при обращении к элементу модуля указывается имя модуля, а затем через точку – идентификатор объекта.

Например: y:=x+ MyModul.x; {x – переменная программы;

MyModul.x – переменная модуля}

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

unit Comp;

interface

type Complex=record

re,im:real;

end;

procedure Add(x,y:Complex; var z:Complex);

implementation

procedure Add;

begin z.re:=x.re+y.re;

z.im:=x.im+y.im

end;

end.

Использование модуля Comp:

program my;

uses Comp;

var x,y,z: Complex;

begin x.re:=5; x.im:=6; y.re:=10; y.im:=3;

add(x,y,z);

writeln(z.re,’ ‘,z.im)

end.

  1. Объектно-ориентированное программирование. Классы. Основные понятия

Классом в Object Pascal называется тип, который содержит поля, методы и свойства. Такой тип называют объектным типом.

type имя типа=class(TObject)

{поля}

{методы}

{свойства}

end;

var имя переменной: имя типа;

Переменная объектного типа называется экземпляром класса или объектом.

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

type TMyClass=class(TObject)

field:integer; {поле}

function MyMethod: integer; {метод}

end;

var MyClass:TMyClass;