本文介绍了标准ML,中缀标识符ERROR代码的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
exception div;
fun f(x,y) =
let
val before = 2.0 * x + 3.0 * y
in
(before + (1.0 / (if x > 0.0001 then x else raise div)) + 2.0 / y) handle div => before / 6.0
end
此代码会产生一些编译错误.
This code yields some compile error.
那是
为什么会发生此错误?我没有使用中缀代码,而只是使用了变量和异常.
Why this error occured?I didn't use infix code, but just use variable and exception.
推荐答案
before
和div
是SML基础库中定义的中缀运算符,因此您不能将它们用作变量或异常的名称,而覆盖它们的中缀首先声明.
before
and div
are infix operators defined in SML's Basis library, so you can't use them as names for variables or exceptions with overriding their infix declaration first.
这篇关于标准ML,中缀标识符ERROR代码的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!