В этой статье речь будет идти о типе данных под названием Запись (Record). Запись представляет собой сложный тип данных, который позволяет объединять данные самых разных типов. Record можно определить как более общий сложный тип данных. Такое название тип получил благодаря большому количеству разных данных, периодически встречающихся в таблице. Несколько различающихся значений, записанные в одной строке получили имя Запись, в смысл которой вложено некоторое количество полей, хранящих собственные значения.
Рассмотрим всё вышеописанное на банальном и простом примере заполнения анкеты людьми, устраивающимися на работу. В анкетные графы входят такие данные, как фамилия/имя/отчество претендента, возраст, уровень образования (среднее/высшее), уровень владения компьютером, уровень владения иностранными языками. После получения всех этих данных, мы можем объединить их в одну Delphi-запись. Все последующие объяснения принципов работы типа данных Record будут связаны с вышеуказанным примером.
Перед тем, как приступить к непосредственной работе с записями Delphi, необходимо заняться описанием типа их данных. Record можно описать в таком виде:
Type
имя_типа_записи = record
{поля записи}
end;
Данное описание относится к блоку полей и имеет такой же вид, как описание переменной, а именно: необходимо указать имя поля, отделить его двоеточием от следующего значения, указать тип данных поименованного поля. Когда все необходимые уточнения совершены, нужно убедиться, что все описанные поля разделены между собой точками с запятой.
Стоит отметить, что подход к выбору типа данных, которые будут относиться к полям записи, должен быть очень ответственным. Это связано с тем, что в отличие от переменной, которая сохраняется в одном экземпляре, запись обычно используется для хранения целого набора данных, иначе говоря, запись можно представить в виде таблицы с несколькими строками. Всё только что описанное означает, что каждое поле будет сохранено в памяти ровно такое количество раз, сколько строк данных вы создадите. К примеру, число строк, достигшее тысячи, может значительно повлиять на загрузку памяти.
Вернёмся к нашему примеру с заполняемой анкетой. Из него мы увидим, что:
Type
TPerson = record
Name: String;
Age: Byte;
Education,PC: Boolean;
Foreign: set of TForeignLanguages;
end;
Теперь разберёмся с полями в необходимом порядке и по отдельности. Сначала поле фамилии, имени и отчества. Для него обычно бывают вполне подходящими текстовые строки, относящиеся к типу String. Вряд ли вам встретятся имена и фамилии, даже с громоздким отчеством, которые не уместятся в строку в двести пятьдесят пять символов. Перейдём к возрасту. Для этого поля будет логичным обратиться к типу данных Byte. К такому типу относятся числа в интервале от нуля до двухсот пятидесяти пяти. Опять же, вы полностью уложитесь в этот интервал. Стоит заметить, что в этом случае совсем не подойдёт тип Integer, так как его максимальное значение ограничивается 32.000, причём тип поддерживает отрицательные значения.
Напомню что чистка ноутбука от пыли это процесс который позволяет избежать перегрева, а как следствие и поломки вашего компьютера, поэтому регулярно следите за состоянием внутри корпуса.