调用宏时出错

时间:2018-06-01 18:33:08

标签: macros jupyter-notebook julia

我的任务是使用宏来进行调和。 所以我写了类似的东西:

macro mean(arr)
    ex = Expr(:call, :/, 1, arr[1])
    for i = 2:length(arr)
         ex = Expr(:call, :+, ex, Expr(:call, :/, 1, arr[i]))
    end
    println(arr[1])
    Expr(:call, :/, length(arr), ex)
end

然后用4个参数执行

@mean(2,2,5,7)

导致错误:

MethodError: no method matching @mean(::Int64, ::Int64, ::Int64, ::Int64)

所以这就是我的问题:出了什么问题,我应该如何纠正这个问题? 值得一提的是,这个程序适用于我的朋友,但不适合我。

1 个答案:

答案 0 :(得分:2)

这里的问题是您将值插入多个参数而不是数组。你应该.idea/webServers.xml