Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将可变数量的字符串从varagin传递到MATLAB函数_Matlab_Variadic Functions_Cell Array - Fatal编程技术网

将可变数量的字符串从varagin传递到MATLAB函数

将可变数量的字符串从varagin传递到MATLAB函数,matlab,variadic-functions,cell-array,Matlab,Variadic Functions,Cell Array,我有一个函数,其中我接收参数作为varargin参数的一部分。但是,在该函数中有另一个使用varargin的函数调用。如何将第一个varargin的内容传递给嵌套函数,而不以单元格数组的单元格数组结束 即,给定以下代码: function foo(varargin) bar(varargin) end function bar(varargin) % Do something with varargin end foo('ab', 'cdef') bar(varargin)

我有一个函数,其中我接收参数作为
varargin
参数的一部分。但是,在该函数中有另一个使用
varargin
的函数调用。如何将第一个
varargin
的内容传递给嵌套函数,而不以单元格数组的单元格数组结束

即,给定以下代码:

function foo(varargin)
    bar(varargin)
end

function bar(varargin)
    % Do something with varargin
end

foo('ab', 'cdef')
bar(varargin)
中的
varargin
是一个1x1单元数组,包含1x2单元数组
{ab',cdef'}

我试着写一些东西,其中:

foo('ab', 'cdef')
如果
varargin
只是一个1x2单元数组
{ab',cdef'}
,则可以发出
bar(varargin)
调用


如何将
foo
调用中
varargin
单元格数组的内容转换为
bar
调用中的单个参数?

只需使用
{:}
冒号参数将元素带出单元格数组即可

function foo(varargin)
    bar(varargin{:});
end

只需使用
{:}
冒号参数将元素从单元格数组中取出即可

function foo(varargin)
    bar(varargin{:});
end

你可以只做
bar(varargin{:})?是的。是的,我能。这非常简单。谢谢没问题。我会把答案写下来,这样你就可以把它标记为接受。除非我遗漏了什么,不接受字符串inputs@excaza:我添加了一个定义,以明确您可以只做
bar(varargin{:})?是的。是的,我能。这非常简单。谢谢没问题。我会把答案写下来,这样你就可以把它标记为接受。除非我遗漏了什么,不接受字符串inputs@excaza:我添加了一个定义来说明这一点