| MATLAB Function Reference | ![]() |
表示
function varargout = foo(n) function y = bar(varargin)
詳細
function varargout = foo(n)
は、関数 foo.m の可変の出力引数を出力します。
function y = bar(varargin)
は、関数 bar.m へ可変の入力引数を渡します。
varargin と varargoutのステートメントは、関数へのオプションの引数を含むためにファンクションM-ファイル内でのみ使われます。これらは、関数の最後の引数として宣言しなければなりません。そして、その時点から、すべての入力、または、出力は、一つにまとめられます。宣言の中では、vararginと varargout は、小文字でなければなりません。
例題
function myplot(x,varargin)
plot(x,varargin{:})
は、2 番目の入力以降の入力引数を変数 varargin にまとめます。myplot は、コンマで区切られたシンタックス varargin{:} を使って、オプションのパラメータを plot に渡します。
myplot(sin(0:.1:1),'color',[.5 .7 .3],'linestyle',':')
は、'color', [.5 .7 .3], 'linestyle', ':'を要素とする 1行4列のセル配列 varargin を出力します。
function [s,varargout] = mysize(x)
nout = max(nargout,1)-1;
s = size(x);
for i=1:nout, varargout(i) = {s(i)}; end
は、サイズベクトルとオプションで各々のサイズを出力します。そのため、
[s,rows,cols] = mysize(rand(4,5));
は、s = [4 5], rows = 4, cols = 5 を出力します。
参考
| var | vectorize | ![]() |