vb.net – 静态局部变量是不是很糟糕?

相关C问题: Static local variables in methods a bad practice?

在VB.NET中,当我想要一个简单的计数器或每次调用方法时递增的东西时,我经常发现自己编写的代码如下:

Private Sub tmrRefresh_Tick(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles tmrRefresh.Tick

  Static a As Integer = 0
  a += 1
  '...rest of method depends on a

End Sub

这是推荐在VB.NET和OOP中吗?

Are static local variables bad practice?

静态局部变量与非局部私有变量完全不同:它们的范围较小.由于您总是希望保持尽可能小的范围(=更好的封装),因此局部静态可能优于私有变量.

另一方面,本地静态变量可能难以正确初始化.如果需要复杂的初始化(例如,如果稍后需要重新初始化变量),则本地静态变量可能不适合.

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...