Sml ML:匹配非穷举错误
嗨,我是ML的新手,我不知道如何解决这个问题 这是密码Sml ML:匹配非穷举错误,sml,Sml,嗨,我是ML的新手,我不知道如何解决这个问题 这是密码 datatype ttree = Empty | Node of int * ttree * ttree * ttree; (* initialize the fist node *) fun Addthird(K:int, Empty) = Node(K, Empty, Empty, Empty); fun Addsecond(Y:int, K:int, Empty) = Node(Y, Empty, Addthird(K, Emp
datatype ttree = Empty | Node of int * ttree * ttree * ttree;
(* initialize the fist node *)
fun Addthird(K:int, Empty) = Node(K, Empty, Empty, Empty);
fun Addsecond(Y:int, K:int, Empty) = Node(Y, Empty, Addthird(K, Empty), Empty);
fun AddNode(T:int, Y:int, K:int, Empty) = Node(T, Empty, Addsecond(Y, K, Empty), Empty);
这就是错误所在
谢谢,Rico,问问你自己,如果你打电话,比如说
Addthird(0, Node(1, Empty, Empty, Empty))
其他函数也是如此。模式匹配需要涵盖所有情况,您的定义仅涵盖最后一个参数
Empty
。只要问问自己,如果调用
Addthird(0, Node(1, Empty, Empty, Empty))
其他函数也是如此。模式匹配需要涵盖所有情况,您的定义仅涵盖最后一个参数Empty