1
比方说,我有以下的树数据类型:如何获取数据类型变量的值?
datatype 'a tree = Empty | Node of 'a * 'a tree * 'a tree;
val x = Node(10, Node(20, Empty, Empty), Node(30, Empty, Empty));
这里,x是int类型树的变量。我想知道的是如何解析和评估树的不同部分只有变量x?
例如,在此功能:
fun add(tree) = ....
add(x);
说功能将所有的树的节点的值,我怎么会正好抓住这些价值?我知道你可以做的元组:
#i(x, y, z, ......)
抓住第i个指数的元素。这种类型的功能如何与递归数据类型一起工作?