Methode in Methode, sind Submethoden o.ä. möglich?

13/11/2007 - 16:26 von Rudi | Report spam
Hallo,

kann man einer Methode eine oder mehrere lokale Submethoden hinzufügen?
Diese sollen nur lokale Gültigkeit haben. Es soll eine lange Methode zur
Übersichtlichkeit aufgeteilt werden. Gibt es einen eleganten Weg dafür?
Danke!

Gruß, Rudi


[..]
public void OnTimerTimeout(Object stateInfo, ElapsedEventArgs e)
/*
void Method1(Object sInfo) { bla, bla }
void Method2(Object sInfo) { bla, bla }
*/
{
int sync = Interlocked.CompareExchange(ref syncPoint, 1, 0);
if (sync == 0)
{
switch(anySelector)
{
case 1:
Method1(stateInfo);
break;
case 2:
Method2(stateInfo);
break;
}
syncPoint = 0;
}
}
[..]
 

Lesen sie die antworten

#1 robert
13/11/2007 - 18:52 | Warnen spam
Hallo Rudi

kann man einer Methode eine oder mehrere lokale Submethoden hinzufügen?
Diese sollen nur lokale Gültigkeit haben. Es soll eine lange Methode zur
Übersichtlichkeit aufgeteilt werden. Gibt es einen eleganten Weg dafür?



Du kannst anonymous methods verwenden.

//untested ;-)
class SomeClass
{
delegate void Foo();

void SomeMethod()
{

int someExternalVar = 0;

Foo foo = delegate(){
Console.WriteLine(someExternalVar);
//Excecute in scope
}

someExternalVar++;
foo();
someExternalVar++;
foo();

}
}

Vielleicht hilft das Dir?

Viele Grüße
Robert
...
www.speak-friend.com

Ähnliche fragen