我是一名C#开发者,但今天我继承了一个没有文档的旧VB应用程序。我一直在阅读代码,并每隔5秒钟参考一次VB关键字列表。
我猜我不理解Shared
和Static
之间的区别。
阅读这篇文章:https://dev59.com/QEvSa4cB1Zd3GeqPbQ5B#1980293
它说:
VB没有
static
,它有shared
但是你可以在上面链接的关键字列表中看到,Static
是一个保留关键字。看起来Static
仅适用于字段,而Shared
可以用于方法或字段?
我想最终我只是希望有人能在链接的答案基础上提供一些VB新手需要了解的更多细节。
比如,假设我有这个:
public class MyClass
Dim myVar as Integer = 1
public shared sub UpdateMyVar()
myVar = 2
end sub
end class
public class MyOtherClass
Dim cOne = New MyClass()
Dim cTwo = New MyClass()
cOne.UpdateMyVar()
txtMyTextBox.Text = cTwo.myVar.ToString()
end class
请原谅任何语法问题。假设此代码可以编译。我刚刚开始匆匆浏览代码一个半小时前。
cTwo.myVar
是1
还是2
?我猜测是2
,因为Shared
似乎影响类的所有实例?这似乎非常危险。