КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Массивы. Массивы в Object Pascal во многом схожи с аналогичными типами данных в других языках программированияМассивы в Object Pascal во многом схожи с аналогичными типами данных в других языках программирования. Отличительная особенность массивов заключается в том, что все их компоненты по сути данные одного типа. Эти компоненты можно легко упорядочить и обеспечить доступ к любому из них простым указанием его порядкового номера. Описание типа массива задается следующим образом: <имя типа> = array [ <сп.инд.типов> ] of <тип>;В качестве индексных типов в Object Pascal можно использовать любые порядковые типы, имеющие объем не более 2 Гбайт (т. е. кроме LongWord И Int64). Определить переменную как массив можно и непосредственно при описании этой переменной, без предварительного описания типа массива, например: vara,b : array [1..10] of Real;Динамические массивы С версии Delphi 4 впервые введены так называемые динамические массивы. При объявлении таких массивов в программе не следует указывать границы индексов: varA: array of Integer;В: array of array of Char;C: array of array of array of Real;В этом примере динамический массив А имеет одно измерение, массив В - два и массив С - три измерения. Распределение памяти и указание границ индексов по каждому измерению динамических массивов осуществляется в ходе выполнения программы путем инициации массива с помощью функции SetLength. В ходе выполнения такого оператора: SetLength(А,3);одномерный динамический массив A будет инициирован, т. е. получит память, достаточную для размещения трех целочисленных значений. Нижняя граница индексов по любому измерению динамического массива всегда равна 0, поэтому верхней границей индексов для A станет 2. Объявление одномерного массива: ИмяМассива: array [НижнийИндекс...ВерхнийИндекс] of ТипЭлементов;Объявление двумерного массива: ИмяМассива: array [НижнийИндекс1..ВерхнийИндекс1,НижнийИндекс2..ВерхнийИкдекс2] of ТипЭлементов;Записи Запись - это структура данных, состоящая из фиксированного количества компонентов, называемых полями записи. В отличие от массива компоненты (поля) записи могут быть различного типа. Чтобы можно было ссылаться на тот или иной компонент записи, поля именуются. Структура объявления типа записи такова: <имя типа> = record <сп.полей> end;Вариант 1. Объявление записи в разделе переменных: Запись: record Поле1:Тип1; Поле2: Тип2; ПолеJ: TиnJ; end;Вариант 2. Сначала объявляется тип-запись, затем - переменная-запись: type ТипЗапись = record Поле1: Тип1; Поле 2:Тип2; ПолеК: ТипК; end; var Запись: ТипЗапись;
|