Mil*_*lad 3 vb6 vba variable-declaration
我通常在几乎所有 VBA 代码中看到所有变量都在例如子/函数名称行之后声明
我知道并且我在一些代码中间使用了变量声明(不在循环内)并且没有看到任何问题。
我通常会避免这样做,因为我看到大多数 VBA 示例代码都在第一行之后声明了它们。我只是想知道从专家/经验丰富的 VB 程序员的角度来看有哪些风险。
中间声明没有风险。
在中间声明变量的效果是它只能在该点之后使用,而不能在之前(即作用域)使用。变量的生命周期
是不同的:当您进入过程时,变量被创建(分配并初始化为各自的零),但在到达其范围(过程中声明它的点)之前,您可能不会真正使用它)。
在 VB6/A 中,在循环内部或外部声明并没有什么区别,因为它们没有块作用域,这与 VB.NET 不同。
因此,两种方法之间没有性能差异(因为所有变量都是在您进入过程时创建的),但在用法上存在差异(您不能在其声明行之前使用创建的变量)。如果您认为这种区别有助于确保您没有错误地使用变量,请仅在需要时声明变量。否则,您可以自由选择这两种方法中的任何一种,只需一致地应用它(在开头声明大部分变量然后在中间声明一些变量可能不是一个好主意)。