如何获取数据类型变量中的值?

时间:2016-11-15 17:24:33

标签: sml ml

我们说我有以下树数据类型:

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 tree类型的变量。我想知道的是,如果变量x,我如何剖析和评估树的不同部分?

例如在此功能中:

fun add(tree) = ....
add(x);

假设该函数添加了树的节点中的所有值,我将如何准确地获取这些值?我知道你可以做的元组:

#i(x, y, z, ......) 

抓取第i个索引处的元素。这种类型的功能如何与递归数据类型一起使用?

1 个答案:

答案 0 :(得分:1)

要从递归数据类型中获取值,您只需为其编写递归函数。

gldhitID