2014-09-24 79 views
0

如果我有一個像這樣的OCaml變量投影?

let test1 (sorted: int list) = 
let test2 (sorted: int list) = 
{blah with sorted} in 
test2 sorted 

一個嵌套函數如何遮蔽工作?在test2裏面我將使用傳入的參數(排序)還是會訪問在test1中聲明的較大範圍?

回答

1

當範圍中存在多個具有相同名稱的變量時,您將始終訪問最內層範圍內的變量。因此,在第3行中,您正在訪問test2的參數,在第4行上您正在訪問test1的參數。