2012-04-04 23 views
2

考慮功能varargout = foo(varargin)。我知道如何格式化comma separated list,所以我們可以自動生成varargin。例如。 [x y z] = ndgrid(-1:1,-1:1,-1:1)等同於:從變量輸出參數列表分配數據

inp = repmat({-1:1},[1 3]); 
[x y z] = ndgrid(inp{:}); 

我的問題是:我怎麼自動獲取輸出x,y,z中的例子)?即,

out = ndgrid(inp{:}); 

PS:我想避免使用eval

回答

1

看起來這應該工作:

out = cell(size(inp)); 
[out{:}] = ndgrid(inp{:});