【发布时间】:2014-05-18 22:15:38
【问题描述】:
我仍在学习 SML,如果这是一个相当愚蠢的问题,我深表歉意。我想知道是否有更好的方法来对函数之外的某些结构进行模式匹配。
例如,假设我们有一个类型
type coord = int * int * int
然后我们有一些b 类型为coord 的值。我知道我们可以在函数中进行模式匹配,例如:
fun get_x_coord ((x, y, z) : coord) = x
但是假设我们在另一个没有作为参数给出的函数中使用b。我想这样做
case b of
(x,y,z) => (* do stuff *)
如果我有一个我想要的结果(例如,我知道会有三个整数值,我只想隔离它们),那就太笨拙了。
有没有更好的方法来做到这一点?
【问题讨论】:
标签: pattern-matching sml smlnj