【发布时间】:2015-07-12 12:17:28
【问题描述】:
查看 Elixir 源代码,我看到乘法是这样定义的:
@spec (number * number) :: number
def left * right do
:erlang.*(left, right)
end
我想制作一个 ** 函数来锻炼力量。但是,当我尝试时,我得到了一个异常,我无法弄清楚如何正确地做到这一点。
@spec (number ** number) :: number
def left ** right do
:math.pow(left, right)
end
总是抛出如下错误:
** (SyntaxError) iex:7: syntax error before: '*'
我尝试将其设为宏,使用取消引用,使用 :"**" 而不是 **。不知道为什么这不起作用...
有什么想法吗?
【问题讨论】: