我怎样才能改变几个值a
,b
,c
等来a'
,b'
,c'
等,这样x'=f(x)
?这些值绑定到特定的名称,并且它们的数量在编译时已知。当我将函数应用于OCaml中的已知参数列表时,如何避免警告?
我试图通过以下方式的功能应用到列表:
let [a';b'] = List.map f [a;b] in ...
但它产生的警告:
Warning P: this pattern-matching is not exhaustive.
Here is an example of a value that is not matched:
[]
任何方式来避免呢?
我应该担心的变化是如果'List.map'函数改变了,这是非常不可能的。我不想编写'(fa,fb,fc)'的原因是我必须写'f'三次,如果函数名比'f'长,它看起来会比写它曾经。 – 2012-04-05 13:19:00