有没有更好的方法在 VB.Net 中创建任意块来限制局部变量的范围?如果尝试过“If 1 Then”,但它看起来很笨拙。
If 1 Then
Dim table = InputParameter1
Dim new_row = table.AddRow
new_row.field(1) = InputParameter3.user_value
End If
我只是不想在程序的后期拥有table
和访问。new_row
重构您的过程,以便在另一个过程中 table 和 new_row 做他们的事情。如果您以后真的不需要它们可见,那么它们正在执行一个不同的子任务,无论如何都应该重构。
一般来说,当您可以将您的代码划分为 N 个段时,其中每个段不依赖于其他段,那么您正在查看 N 个任务,最好是 N 个过程。
这可以追溯到任何程序都应该做一件事的规则,而多个段表明它正在做不止一件事。
使用Option Strict On
,那必须是If True Then
,但更首选的选项(据我所见)是Do ... Loop While False
.
但是,没有像简单Begin ... End
(或{ ...}
)这样的语法。
如果您可以使用IDisposable
,并将其放置在块的末尾,Using newVariable = AnIDisposable
则可以为您提供最接近您所描述的内容,但就像我说的那样,它被放置在末尾。