Hallo,
Du hast die Fehlermeldung des Compilers vermutlich falsch verstanden: Durch "int var1" wurde die Variable deklariert; sie ist also innerhalb des gesamten Blocks, zu dem diese Zeile gehört, gültig. Du hast aber den Fehler gemacht, nur in einem Zweig der if-Abfrage einen Wert zuzuweisen; im (nicht benutzten) else-Zweig wird kein Wert zugewiesen. Es gibt deshalb eine Verzweigung (nämlich else), bei der var1 undefiniert bleibt.
Lösung:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| ... int var1 = 0; int var2 = 0;
if (Bedingung) { var1 = 12; var2 = 33; }
Console.WriteLine("Ausgabe: {0}, {1}", var1, var2); |
Merke: Du musst genau auf den Gültigkeitsbereich von Variablen achten: innerhalb eines Blocks "{...}", innerhalb einer Methode, innerhalb einer Klasse.
Gruß Jürgen
PS. Sorry, habe Christians Antwort übersehen, während ich geschrieben habe.