是否存在与C / C ++'continue'关键字相当的VB6?
在C / C ++中,命令'continue'开始循环的下一次迭代。
当然,存在其他等价物。我可以将循环的剩余代码放在if语句中。或者,我可以使用goto。 (唉!)
答案 0 :(得分:20)
VB6中没有等效项,但VB的后续版本确实引入了这个关键字。本文有一个更深入的解释:http://vbnotebookfor.net/2007/06/04/the-continue-statement/
也许您可以重构代码以添加if语句或让循环调用可以返回的函数。
答案 1 :(得分:7)
VB6没有循环的continue语句。你必须使用goto,if或其他循环来模拟它。
//VB.net
do
if condition then continue do
...
loop
//VB6 equivalent (goto)
do
if condition then goto continue_do
...
continue_do:
loop
//VB6 equivalent (if)
do
if not condition then
...
endif
loop
你不能在VB6中使用“exit while”。但你可以使用转到。
While condition
if should_skip then goto mycontinue
'code
if should_break then goto outloop
mycontinue:
Wend
outloop:
答案 2 :(得分:6)
可悲的是,如果VB6没有继续 - 我认为这是VB 2005中的新功能。
我不会总是害怕goto语句 - 这实际上是继续是什么,但是在循环之后不需要标记的行。只要你的goto语句没有跳得很远,它们将始终是可读的,并且它可能是解决这个问题的最优雅的解决方案。
在for循环中嵌入另一个if / then / else实际上比一个简单的goto更好地阅读和维护(在goto行上注释说“'read as Continue For”)。
祝你好运!答案 3 :(得分:2)
我是个白痴:P谢谢MarkJ
For index As Integer = 1 To 10
If index=9 Then
Continue For
End If
'some cool code'
Next
对于.net不抱歉。 我认为你必须使用goto,我知道使用继续看起来“更干净”但是使用if路线没有任何问题。
错误。
Continue:
For index As Integer = 1 To 10
If index=9 Then
GoTo Continue
End If
'some cool code'
Next
校正(?)
For index = 1 To 10
If index=9 Then
GoTo Continue
End If
'some cool code'
Continue:
Next
讨厌vb