循环内的变量声明

时间:2011-08-26 05:33:08

标签: .net vb.net memory-management

    For i As Integer = 1 To 10
        Dim j As Integer = 10
    Next

现在我的问题是,每次在for循环中执行内存时是否将内存分配给j?或者在后续迭代中仅分配值10?

2 个答案:

答案 0 :(得分:1)

来自MSDN:

即使变量的范围仅限于块,其寿命仍然是整个过程的寿命。如果在过程中多次输入块,则每个块变量将保留其先前的值。为避免在这种情况下出现意外结果,最好在块的开头初始化块变量。

本文可能会对您有所帮助(可变范围和生命周期)http://msdn.microsoft.com/en-us/library/1t0wsc67.aspx

答案 1 :(得分:1)

不,它是每个函数声明一次并重置循环的每次迭代。

与此问题相同: Does one of these use more resources than the other?