Wer hätte gedacht, daß folgender Code unter VB.NET noch geschrieben werden kann...

10: Dim s 20: s = "Hallo, Welt!" : Console.WriteLine(s) : Dim i 30: i = 42 * Rnd() : If i < 40 Then GoTo 20 Else End

Sehr schön ist auch das hier:

Dim i = 42 * Rnd() If i < 40 Then Console.WriteLine("bin im if-block") GoTo sprungmarke sprungmarke2: Console.WriteLine("zurück im if-Block") Else sprungmarke: Console.WriteLine("willkommen im else-block") GoTo sprungmarke2 End If

Übrigens sind GoSub, Let und Rem immer noch VB-Schlüsselworte, auch wenn der Compiler inzwischen die Übersetzung verweigert :)

 

Für all diejenigen, die Goto eklig finden und jetzt auf VB zeigen: C# hat auch ein GoTo, allerdings kann man das wenigstens nicht zum Sprung zwischen abgeschlossenen Codeblöcken verwenden. Meinen geschätzten Kollegen Daniel hat das zu der Bemerkung veranlaßt, dass VB eben doch die mächtigere Sprache sei... :)

Ein bißchen Theorie zu GoTo gefällig? Ein Blick in diesen Wikipedia-Eintrag oder das entsprechende Kapitel in diesem genialen Buch helfen weiter.