在OCaml中有三个函数
let my_A = my_C
let my_B = my_A
let my_C = my_B
函数A调用函数C。函数B调用函数A。函数C调用函数B。
我尝试使用"and"来使它们相互递归(这样它们可以相互调用),如:
let my_A = my_C
and
my_B = my_A
and
my_C = my_B
但是上面写着
"未绑定值my_C in line __"
这基本上是说"嘿,你不能在my_A
中调用my_C
",但我不明白为什么?我不能把三个函数连在一起吗?
你必须说是let rec ... and ... and ...
。你没有rec