Im folgenden C# -Code-Snippet
Ich habe eine ‚while
‘ Schleife in einer ‚foreach
‘ Schleife, und ich möchte in ‚foreach
‘ zum nächsten Punkt springen, wenn eine bestimmte Bedingung auftritt.in weiter, während im Inneren foreach
foreach (string objectName in this.ObjectNames)
{
// Line to jump to when this.MoveToNextObject is true.
this.ExecuteSomeCode();
while (this.boolValue)
{
// 'continue' would jump to here.
this.ExecuteSomeMoreCode();
if (this.MoveToNextObject())
{
// What should go here to jump to next object.
}
this.ExecuteEvenMoreCode();
this.boolValue = this.ResumeWhileLoop();
}
this.ExecuteSomeOtherCode();
}
'continue
' würde zu Beginn des 'while
' loop springt nicht der 'foreach
' loop. Gibt es ein Schlüsselwort, das ich hier verwenden soll, oder sollte ich nur goto verwenden, was ich nicht wirklich mag?
Es tut mir leid der Code-Snippet, das ich zuerst nicht sehr genau hinzugefügt. Es gibt mehr Code zum Überspringen. Die Verwendung von Pause wird nicht helfen. Ich habe das Code-Snippet aktualisiert, um genauer zu sein. – Amr
Obwohl ich Ihre Antwort mag, wie es das Problem löst, ohne zusätzliche Logik hinzuzufügen; Ich denke nicht, dass es eine gute Lösung ist. Ich wüsste nicht, wie das im OP funktioniert, aber den Code so zu strukturieren, dass diese verrückte Logik gar nicht erst benötigt wird, wäre die beste Lösung. – nlaq
Schade, dass Sie Kommentare nicht abstimmen können ... +1 @Nelson auch. –