Составители:
68
- индекс в фигурных скобках;
- индекс в круглых скобках.
Пример:
y(i)= varargin{i}(2);
Здесь индекс в фигурных скобках {i} указывает адрес i-ой ячейки мас-
сива varargin, а индекс в круглых скобках (2) указывает на второй эле-
мент в ячейке.
Формирование выходного массива varargout. При произ-
вольном количестве выходных аргументов их необходимо упаковать в
массив
ячеек varargout. Чтобы определить количество выходных ар-
гументов функции, надо использовать функцию nargout.
Пример
Следующая функция использует в качестве входа массив из
двух столбцов, где первый столбец - множество значений координаты
x, а второй - множество значений координаты y. Функция разбивает
массив на отдельные векторы, которые могут быть переданы в функ-
цию testvar в качестве
входов.
function [varargout] = testvar2(arrayin)
for i = 1:nargout
varargout{i} = arrayin(i, :);
end
Оператор присваивания в цикле for использует синтаксис
присваивания массивов ячеек. Левая часть оператора присваивания
использует фигурные скобки, чтобы указать, что данные в виде стро-
ки массива присваиваются ячейке. Для вызова функции testvar2 мож-
но использовать следующие операторы:
a = [1 2 3 4 5; 6 7 8 9 0]';
[p1,p2,p3,p4,p5] = testvar2(a)
p1 = 1 6
p2 = 2 7
p3 = 3 8
p4 = 4 9
p5 = 5 0
Использование массивов ячеек в
списках аргументов. Ар-
гументы varargin и varargout должны быть последними в соответст-
вующих списках аргументов. При вызове функции аргументы, пред-
шествующие varargout, должны быть вычислены внутри функции.
Пример. Приведенные ниже заголовки функций показывают
правильное использование списков varargin и varargout:
function[out1, out2] = example1(a,b,varargin)
function[i,j,varargout] = example2(x1,y1,x2,y2,flag)
- индекс в фигурных скобках;
- индекс в круглых скобках.
Пример:
y(i)= varargin{i}(2);
Здесь индекс в фигурных скобках {i} указывает адрес i-ой ячейки мас-
сива varargin, а индекс в круглых скобках (2) указывает на второй эле-
мент в ячейке.
Формирование выходного массива varargout. При произ-
вольном количестве выходных аргументов их необходимо упаковать в
массив ячеек varargout. Чтобы определить количество выходных ар-
гументов функции, надо использовать функцию nargout.
Пример
Следующая функция использует в качестве входа массив из
двух столбцов, где первый столбец - множество значений координаты
x, а второй - множество значений координаты y. Функция разбивает
массив на отдельные векторы, которые могут быть переданы в функ-
цию testvar в качестве входов.
function [varargout] = testvar2(arrayin)
for i = 1:nargout
varargout{i} = arrayin(i, :);
end
Оператор присваивания в цикле for использует синтаксис
присваивания массивов ячеек. Левая часть оператора присваивания
использует фигурные скобки, чтобы указать, что данные в виде стро-
ки массива присваиваются ячейке. Для вызова функции testvar2 мож-
но использовать следующие операторы:
a = [1 2 3 4 5; 6 7 8 9 0]';
[p1,p2,p3,p4,p5] = testvar2(a)
p1 = 1 6
p2 = 2 7
p3 = 3 8
p4 = 4 9
p5 = 5 0
Использование массивов ячеек в списках аргументов. Ар-
гументы varargin и varargout должны быть последними в соответст-
вующих списках аргументов. При вызове функции аргументы, пред-
шествующие varargout, должны быть вычислены внутри функции.
Пример. Приведенные ниже заголовки функций показывают
правильное использование списков varargin и varargout:
function[out1, out2] = example1(a,b,varargin)
function[i,j,varargout] = example2(x1,y1,x2,y2,flag)
68
Страницы
- « первая
- ‹ предыдущая
- …
- 68
- 69
- 70
- 71
- 72
- …
- следующая ›
- последняя »
