如何在Julia中将运算符用作函数?

如何在Julia中将运算符用作函数?,julia,Julia,我在某人的代码中看到,他们在使用+操作符,就好像它是一个函数,通过执行+(1,2,3)。在Julia中是否可以使用运算符作为函数 此外,我还看到了A之类的东西⊗ B,其中⊗是可自定义的。我怎样才能做到这一点,有没有一个符号列表可以这样使用?是的,您确实可以在Julia中使用运算符作为函数 : 在Julia中,大多数运算符只是支持特殊语法的函数。(例外情况是具有特殊求值语义的运算符,如&&和| |。这些运算符不能是函数,因为短路求值要求在求值运算符之前不求值它们的操作数。)因此,您也可以使用圆括号

我在某人的代码中看到,他们在使用
+
操作符,就好像它是一个函数,通过执行
+(1,2,3)
。在Julia中是否可以使用运算符作为函数


此外,我还看到了
A之类的东西⊗ B
,其中
是可自定义的。我怎样才能做到这一点,有没有一个符号列表可以这样使用?

是的,您确实可以在Julia中使用运算符作为函数

:

在Julia中,大多数运算符只是支持特殊语法的函数。(例外情况是具有特殊求值语义的运算符,如&&和| |。这些运算符不能是函数,因为短路求值要求在求值运算符之前不求值它们的操作数。)因此,您也可以使用圆括号参数列表应用它们,就像使用任何其他函数一样:

此外,Julia允许您定义自己对运算符的含义,并为此目的提供了许多符号。您可以在此处找到可用符号列表:|

并将其定义为:

⊗(a, b) = a * 3 - b # or some other arbitrary thing

a ⊗ b == a * 3 - b # true
⊗(a, b) = a * 3 - b # or some other arbitrary thing

a ⊗ b == a * 3 - b # true