对我来说,隐藏现有的值,如:
阴影和嵌套函数
在F#
f中不可变#重复定义
FSharp,用于娱乐和利润评论
似乎违背了不变性和类型安全的概念,这使得F#如此强大.F#中的阴影效果与 C#中的不同.我花了很长时间才发现我的代码中的一个错误是由于在同一范围内无意中隐藏了一个名称.有没有办法让VS中的阴影值有编译器警告?
我知道在某些情况下它可能很有用.例如,Checked Aritmetics.
由于复制/粘贴,我在自己的代码中发现了一个错误.相同的值名称由同一范围内的复制/粘贴进行遮蔽.
let func() =
let a = 1
let a = something_else
....
Run Code Online (Sandbox Code Playgroud)
在C#中我不会通过编译.有没有办法禁用阴影?至少在相同的范围内?
谢谢