clojure - Clojure 中的参数重载

标签 clojure arity

为什么以下函数在 Clojure 中不起作用:

(defn tests
  [] 0
  [a b] 1)

它给出以下错误:clojure.lang.Compiler$CompilerException:java.lang.RuntimeException:无法解析符号:在此上下文中的a

最佳答案

每个都需要用括号括起来

(defn tests 
  ([] 0) 
  ([a b] 1))

关于clojure - Clojure 中的参数重载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17476633/

相关文章:

Clojure : Is there any reason to detail arities in functions definition?

function - 有没有办法返回一个可以有多个参数的乐趣?

java - 使用 Java 反射调用变量方法?

java - Clojure let 与多元性

java - 如何将 ASCII 转换为十六进制

data-structures - 有没有在 Erlang 中实现高效数组类型的模块?

java - 如何在 Java 或 Clojure 中用正则表达式替换字符串

clojure - 什么时候在 Clojure 宏中使用 ~'some-symbol?

optimization - Clojure 中的快速复数运算

Erlang/Elixir 守卫和数量