如何在MatLab中定义数组作为参数?

如何在MatLab中定义数组作为参数?,matlab,function,Matlab,Function,我有一个功能: function recon_mm(lvl, Threshold, fileToCompress) 我想做一个数组。我查看了MatLab文档,但没有找到明确的示例来说明Threshold是一个数组,MatLab不是静态类型,也没有类型注释的语法,但是您可以检查参数是否是标量,并提前返回 if isscalar(Threshold) error('Parameter ''Threshold'' must be an array') return end 请注意,

我有一个功能:

function recon_mm(lvl, Threshold, fileToCompress)

我想做一个数组。我查看了MatLab文档,但没有找到明确的示例来说明Threshold是一个数组,

MatLab不是静态类型,也没有类型注释的语法,但是您可以检查参数是否是标量,并提前返回

if isscalar(Threshold)
    error('Parameter ''Threshold'' must be an array')
    return
end

请注意,这也将捕获1x1数组,例如,
isscalar([1])==true

您不需要指定它,只需假设它是。Matlab将处理。您应该能够像编写函数一样将
Threshold
传递给函数。在MATLAB中,默认情况下数组中的几乎所有内容都是@AnderBiguri所以当我想调用
recon_mm
shoudl时,我写
recon_mm(4,{1,2,3,4},'filename.jpg')
?这是正确的调用吗?其中1,2,3,4是连续的元素?是的,你可以这样做。但是,请记住数组类似于
[1234]
,而
{1,2,3,4}
是一个单元格数组。不管怎样,你可以做到。它可以是任何东西。