f# 重复定义
在 F# powerpack 数学提供程序源代码中:我看到了这个(在 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
是否有重复的定义?
in F# powerpack math provider source code: I saw this (in 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
Why does this complile? does c
get duplicate definition?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是阴影;在函数/类/成员范围内,任何本地
let
绑定都将被后续的同名let
绑定所遮蔽。另请参阅阴影和嵌套函数
This is shadowing; at function/class/member scope, any local
let
bindings will be shadowed by subsequentlet
bindings to the same name.See also Shadowing and Nested function