C 語言 continue 直接跳過本次循環剩餘語句,進入下一次迭代。VB6/VBA 沒有 Continue 關鍵字(VB.NET 已引入 Continue For/Do/While)。
GoTo 標籤For i = 0 To 10
If i = 0 Then
GoTo NextIteration ' 跳過 i=0 時的打印
Else
Debug.Print i
End If
NextIteration: ' 標籤位於 Next 語句之前
Next i
Next / Loop / Wend 之前,確保直接進入下一次迭代。NextIteration_Outer、NextIteration_Inner)。' 原始邏輯
For i = 0 To 10
If i = 0 Then Continue ' 伪代码
DoSomething(i)
Next
' 結構化寫法
For i = 0 To 10
If i <> 0 Then ' 反轉條件,將正常邏輯放入 If 塊
DoSomething(i)
End If
' 此處無代碼,自然進入 Next i
Next
GoTo,可讀性強,符合結構化編程原則。For i = 0 To 10
If i = 0 Then Continue For
Console.WriteLine(i)
Next
Do While condition
If skipCondition Then Continue Do
' ...
Loop
| 環境 | 推薦方式 | 備註 |
|---|---|---|
| VB6 / VBA | 條件反轉 + If 塊 | 首選,無 GoTo 風險 |
| VB6 / VBA (複雜邏輯) | GoTo 標籤 | 標籤放在 Next/Loop 前,同一過程內 |
| VB.NET | Continue For/Do/While | 原生關鍵字,直接使用 |