f#重复定义 [英] f# duplicate definition
本文介绍了f#重复定义的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
:我在lapack_service_netlib.fs
中看到了这一点
member this.dgemm_((a:matrix),(b:matrix)) =
// allocate results
let c = Matrix.zero (m) (n)
// transpose
let c = Matrix.transpose c
...
// fixups
let c = Matrix.transpose c
// result tuple
c
为什么会这样? c
是否获得重复的定义?
Why does this complile? does c
get duplicate definition?
推荐答案
这是阴影;在函数/类/成员作用域中,任何后续的let
绑定都将被具有相同名称的后续let
绑定所遮盖.
This is shadowing; at function/class/member scope, any local let
bindings will be shadowed by subsequent let
bindings to the same name.
另请参见 Shadowing和嵌套函数
这篇关于f#重复定义的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文