输入的顺序在 MATLAB 函数中重要吗?

Does the order of inputs matter in MATLAB functions?

我有一个名为 f(x,y) 的函数,当 x = -1y = 1 时 return 为 1,否则为 0

我想将它应用于矩阵的每一对相同列元素。我想知道我是否必须以另一种方式重复它?或者它对 f(y,x) 是否同样有效?我的意思是 return 1 如果其中一个元素是 -1 而另一个元素是 1 还是必须按顺序排列?

这取决于函数 f 是如何定义的。

  • 如果它相对于输入是对称的,即 "one of them" 需要是 -1 和 "the other" 1,它可以在不改变反向输入的情况下工作。
  • 如果函数定义为 "the first" 输入必须为 -1 并且 "the second" 必须为 1 - 当参数顺序为切换。

例如,这是定义f的"symmetric"方式:

function out = f(x,y)
  out = ~(x+y);
end

这是一种 "asymmetric" 方式:

function out = f(x,y)
  out = (x == -1) && (y == 1);
end