Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
системный анализ и управление.doc
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
613.89 Кб
Скачать

Массивы записей

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

var

MyCDs : array [0..9] of TCDRecord;

begin

MyCDs[0].Number :=1;

MyCDs[0].Title :=’Aftermath’;

MyCDs[0].Artist :=’The Rolling Stones’;

MyCDs[0].Year := 1986;

MyCDs[0].Recorded:=’ABCKO Music and Records,Inc’;

MyCDs[0].Price := 80;

MyCDs[0].Market := ’Горбушка’;

MyCDs[1].Number := 2;

MyCDs[1].Title := ’Between the buttons’;

MyCDs[1].Artist := ’The Rolling Stones’;

MyCDs[2].Number := 3;

MyCDs[2].Title := ’Willage Green Preservation Society’;

MyCDs[2].Artist := ’The Kinks’;

Label1.Caption := MyCDs[2].Artist;

{ Продолжение . . . }

end;

Это выглядит чуть сложнее, чем в случае массива целого или вещественного типа. Так, индекс следует за именем массива MyCDs, а затем – точка и имя поля.

Включаемый файл

Включаемый файл – это обычный текстовый файл, содержимое которого необходимо «подставить» в нужное место модуля. Обычно в таких файлах размещают объявления констант, директивы компилятора или фрагменты кода, которые используются и в других модулях проекта. Иногда бывает удобно вынести в отдельный файл часть уже отлаженного кода чтобы уменьшить объем текста, видимого в редакторе. Внешний файл автоматически включается в текст модуля при компиляции с помощью специальной директивы. Для имени включаемого файла рекомендуется расширение .INC.

Допустим, что включаемый файл должен содержать код, показанный на листинге 2.2

Листинг2.2. Файл TEST.INC.

const

DefWidth = 500;

DefHeight = 300;

type

TCDRecord = record

Number : integer; // Порядковый номер CD в коллекции

Title : string; // Наименование

Artist : string; // Исполнитель

Year : integer; // Год выпуска

Recorded: string; // Фирма-производитель

Price : double; // Стоимость

Market : string; // Где куплен

end;

Чтобы создать включаемый файл, в главном меню Delphi надо выбрать File | New и затем дважды щелкнуть на пиктограмме Text диалога New Items. В результате откроется чистая страница редактора кода. Введите текст и сохраните файл под любым именем, выбрав в меню File | Save As. . .. Не забудьте при этом задать расширение имени INC, – иначе по умолчанию будет принято расширение TXT.

Чтобы включить внешний файл в текст модуля, необходимо воспользоваться директивой компилятора $I так как это показано в следующем примере:

unit Unit2;

interface

uses

Windows, Messages, SysUtils, Classes,StdCtrls;

{$I Test.inc}

{ ... остальной текст модуля }

Директива $I дает указание компилятору взять исходный текст из файла TEST.INC и заменить им саму директиву. Можно считать, что действие директивы $I подобно копированию фрагмента текста из одного файла в буфер обмена и вставке содержимого буфера в результирующий файл.

Необходимо следить чтобы включаемый файл был синтаксически корректным. В противном случае компилятор зафиксирует ошибку.

Подпрограммы

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

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