VB.NET静态声明:
http://msdn.microsoft.com/en-us/library/z2cty7t8.aspx
我可以在2008年找到这个问题的唯一参考:
http://forums.asp.net/t/951620.aspx?what+is+the+equivalent+of+static+from+vb+net+in+c+
在最新版本的C#中是否存在等价物,或者仍然不存在?在VB.NET中使用Static有什么特别的错误吗?
答案 0 :(得分:1)
C#不支持它,可能不会因为它以某种方式违反了对象编程思想,即状态是对象的一部分,而不是方法。
当然可以说它只是语法糖,他/她将是非常正确的事件。但是,通过查看类代码,我们期望将其状态变量描述为类的字段。否则我们应该在每一种方法中找到它。
所以这可以简单地看出一些高层决策,你的耕作可能会有所不同。
答案 1 :(得分:0)
我个人喜欢VB过程级别的Static
,即使它对某些人来说不够“纯”。
您可以在声明中设置它而忘记它:
Static oClient As HttpClient = New HttpClient()
无需检查是否需要实例化模块级变量:
If moClient Is Nothing Then moClient = New HttpClient()
而且,愚蠢的我,我一直希望C#.NET和VB.NET之间是等效的,但不幸的是,我了解到坚持这个概念是愚蠢的。