Megosztás a következőn keresztül:


Folytatási utasítás (Visual Basic)

Azonnal átviszi az irányítást egy ciklus következő iterációjára.

Syntax

Continue { Do | For | While }  

Megjegyzések

Átvihet egy Do, Forvagy While hurkot a ciklus következő iterációjára. A vezérlés azonnal átmegy a ciklusfeltétel-tesztre, amely egyenértékű az átadással vagy utasítással ForWhile, illetve az LoopDo azt vagy While záradékot tartalmazó Until utasítással.

A hurok bármely pontján használható Continue , amely lehetővé teszi az átvitelt. Az irányítás átvitelét lehetővé tevő szabályok megegyeznek a GoTo utasítással.

Ha például egy hurok teljes egészében egy Try blokkban, blokkban Catch vagy Finally blokkban található, akkor a hurokból való átvitelre is használható Continue . Ha viszont a Try...End Try szerkezet a hurokban található, akkor nem használhatja Continue az irányítást a Finally blokkból való átvitelre, és csak akkor használhatja CatchTry, ha teljesen ki van kapcsolva a Try...End Try struktúrából.

Ha azonos típusú beágyazott hurkokkal rendelkezik, például egy Do másik Do hurkon belüli hurokkal, Continue Do az utasítás az azt tartalmazó legbelső Do hurok következő iterációjára ugrik. Az azonos típusú, tartalmazó ciklus következő iterációjára nem Continue ugorhat.

Ha különböző típusú beágyazott hurkokkal rendelkezik, például egy DoFor hurkon belüli hurokkal, bármelyik ciklus következő iterációjára ugorhat bármelyik Continue Do ciklus egyikével vagy Continue For.

Példa

Az alábbi példakód egy Continue While tömb következő oszlopára ugrik, ha az osztó értéke nulla. A Continue While hurok belsejében For van. Átkerül az While col < lastcol utasításba, amely a ciklust tartalmazó legbelső While hurok következő iterációja For .

Dim row, col As Integer
Dim lastrow As Integer = 6
Dim lastcol As Integer = 10
Dim a(,) As Double = New Double(lastrow, lastcol) {}
Dim b(7) As Double
row = -1
While row < lastrow
    row += 1
    col = -1
    While col < lastcol
        col += 1
        a(row, col) = 0
        For i As Integer = 0 To b.GetUpperBound(0)
            If b(i) = col Then
                Continue While
            Else
                a(row, col) += (row + b(i)) / (col - b(i))
            End If
        Next i
    End While
End While

Lásd még