Массив как возврат функции и параметр метода
Обратите внимание, что этот установленный размер - это объявление статического массива в Delphi.
var DayVisitors : array[0..6] of Integer;
Массив как возврат функции
В Delphi функция - это подпрограмма, которая возвращает значение.
Если Вы хотите, чтобы функция возвратила переменную типа массив, Вы можете соблазниться использовать следующее объявление функции:
function GetWeekTotal(weekIndex : integer) : array[0..6] of integer; begin // это НЕ БУДЕТ компилироваться end;
Когда Вы попробуете скомпилировать данный код, Вы получите следующую ошибку компиляции:
[Pascal Error] E2029 Identifier expected but 'ARRAY' found.
Очевидно, что когда Вы объявляете функцию, которая возвращает значение массива, Вы не можете включать объявление индексов определенного типа.
Чтобы позволить функции возвращать значение массива, Вы сначала должны создать тип массива, затем использовать его как возвращаемый тип функции, например:
// Это БУДЕТ компилироваться type TDayVisitors = array[0..6] of integer; { ... } function GetWeekTotal(weekIndex : integer) : TDayVisitors; begin // делаем какие-либо вычисления дней недели end;
Массив как свойство Метода/Подпрограммы
Используется точно так же, как при возвращении массива функции, когда Вы объявляете подпрограмму, которая получает параметры как массив:
type TDayVisitors = array[0..6] of integer; { ... } procedure DisplayWeekTotal(weekVisitors : TDayVisitors) ; begin // Отображает какую-либо информацию относительно дня недели. end;
Комментарии