Matlab:max(A,[],dim)中的第二个参数是什么意思?

Mah*_*00d 4 matlab

我只是max在矩阵的特定列上使用函数,语法让我想知道:

这个空矩阵作为第二个参数传递的是什么意思?

max(A,[],dim)
Run Code Online (Sandbox Code Playgroud)

我知道这可能是为了将它max(A,i)与比较分开.但是,为什么一个空矩阵呢?

它有一定的含义吗?在这样的其他函数中使用这种参数吗?

Mik*_*ail 8

实际上,你的猜测是正确的.由于Matlab不是强类型语言,并且没有经典函数重载技术,因此函数必须通过上下文来猜测参数的含义.Mathworks希望将单个矩阵中的最大值和单个函数中的两个数组合并.

因此,他们需要以某种方式将这些案件分开.并且他们使用空矩阵[]作为占位符.否则,他们将无法分开案件max(A, dim)max(A, B).他们可以为此目的使用任何特殊变量,但[]它是基本结构.