Карта сайтаСсылкиКонтакты

Хостинг


Массив как возврат функции и параметр метода

PDF Печать
Статьи

Массивы в Delphi позволяют нам обращаться к ряду переменных под одним именем и использовать индекс для обращения к определенной переменной.

В примере массив целых чисел, который содержит семь значений (целых чисел).

Обратите внимание, что этот установленный размер - это объявление статического массива в 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;

 

Добавить комментарий


Защитный код
Обновить