在Visual Basic中嵌套循环中的堆栈溢出

时间:2013-07-06 02:33:37

标签: vb.net stack-overflow

我在我的程序中创建了一个构造函数,但它一直给我堆栈溢出异常。我尝试更改参数,但没有帮助...

Public Sub New()
    InitializeComponent()

    For i As Integer = 0 To i = 12
        For j As Integer = 0 To i = 9
            atomcode(i, j) = (i * 10000 + j * 1000 + 99)
        Next j
    Next i

End Sub

1 个答案:

答案 0 :(得分:2)

我不确定您是否尝试输入代码或粘贴代码。您For statement的格式是错误的,在第二个声明中您正在使用ji两者,如果它有效,则会增加j,直到i = 9导致你的stackoverflow。像这个简单的控制台程序示例应该工作。此外,上述代码编译的唯一方法是,如果您有Option Strict Off,请自己帮助并将Option Strict On放在班级的顶部,这样可以防止隐式缩小转换并为您节省大量的悲伤

Option Strict On
Module Module1
    Dim atomcode(,) As Integer

    Sub Main()
        ReDim atomcode(12, 9)
        For i As Integer = 0 To 12
            For j As Integer = 0 To 9
                atomcode(i, j) = (i * 10000 + j * 1000 + 99)
            Next j
        Next i

    End Sub 

End Module