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 | ![]() |