【发布时间】:2016-01-12 10:49:35
【问题描述】:
我想知道一次(在 If-then-else 循环之外)或多次(在每种情况下)声明变量之间的相关区别:
第一种情况(我正在使用这种方式):
If A < 0 Then
Dim YNC As MsgBoxResult = MsgBox("Select Yes-No-Cancel", vbYesNoCancel, "Select")
'Some code
ElseIf A = 0 Then
Dim YNC As MsgBoxResult = MsgBox("Select Yes-No-Cancel", vbYesNoCancel, "Select")
'Some code
Else
Dim YNC As MsgBoxResult = MsgBox("Select Yes-No-Cancel", vbYesNoCancel, "Select")
'Some code
End If
第二种情况:
Dim YNC As MsgBoxResult
If A < 0 Then
YNC = MsgBox("Select Yes-No-Cancel", vbYesNoCancel, "Select")
'Some code
ElseIf A = 0 Then
YNC = MsgBox("Select Yes-No-Cancel", vbYesNoCancel, "Select")
'Some code
Else
YNC = MsgBox("Select Yes-No-Cancel", vbYesNoCancel, "Select")
'Some code
End If
有什么理由更改我的代码吗?
我的选择是否正确?
编辑
我更喜欢第一个,因为它更具可读性(至少对我而言)
编辑 2
好的,我想我可以在史蒂夫发布的链接中找到答案:
最小化范围
一般来说,在声明任何变量或常量时,它是好的 编程实践使范围尽可能窄(块 范围最窄)。这有助于节省内存并最大限度地减少 您的代码错误地引用错误变量的可能性。 同样,您应该将变量声明为静态 (Visual Basic) 仅当有必要在程序之间保持其价值时 来电。
【问题讨论】:
-
你想在 if 结束后使用那个 YNC 吗?我想是的吧?然后尝试在 ifs 中多次声明它。 Scopes in Visual Basic
-
@Steve 有可能。我有多个 msgbox 问题。感谢您的链接,但我知道范围限制。我的问题是:什么更好,为什么?
标签: vb.net variables variable-declaration