Ich habe folgende Struktur. void funktion1() { //Dinge tun try { //Dinge tun using (var sre = new blah(blahv)) { //Dinge tun sre.function(g); } } catch (System.IO.IOException) { //Dinge tun } } private void neuefunktion(Typ irgendwas) { g = irgendwas; sre.function(g); } sre ist bei neuefunktion "im aktuellen kontext nicht vorhanden". Wo finde ich sre von neuefunktion aus, wie greife ich von neuefunktion aus darauf zu?
was willst du hören? Es geht nun mal nicht. Du musst die Variabel schon in der klasse anlegen sonst kann du nicht darauf zugreifen.
> was willst du hören? Vielleicht will er hören, warum's so ist? http://de.wikipedia.org/wiki/Variable_%28Programmierung%29#Sichtbarkeitsbereich_von_Variablen_.28Scope.29 Ralf
Rinaldo Kolb schrieb: > //Dinge tun > using (var sre = new blah(blahv)) > { > //Dinge tun > sre.function(g); > } Dort wird sre deklariert und initialisiert. Das bedeutet, dass sre NUR innerhalb der geschweiften Klammern unter "using" bekannt ist. Um sre überall bekannt zu machen, müsstest du es zumindest auf Klassenebene (also außerhalb deiner Funktionen) deklarieren. btw.: Du solltest dir angewöhnen direkt von Anfang an aussagekräftige Variablennamen zu verwenden. "blah", "blahv" und "irgendwas" sind eher hinderlich, auch für uns, wenn wir dir helfen wollen ;-)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.