Mrs*_*N_C 2 c# recursion local-functions
我正在玩本地函数,如果它包含具有相同名称的本地函数,则无法弄清楚如何调用host函数.
class Program
{
static void Main(string[] args)
{
new Test().Foo();
Console.Read();
}
}
class Test
{
public void Foo()
{
Console.WriteLine("Host function");
void Foo()
{
Console.WriteLine("Local function");
}
Foo(); // This calls the local function
Foo(); // I would like to call the host Foo() recursively here
}
}
Run Code Online (Sandbox Code Playgroud)
您可以通过以下方式添加呼叫this:
Foo(); // calls the local function
this.Foo(); // calls the class instance function
Run Code Online (Sandbox Code Playgroud)
虽然,即使有这样的工作方法,仍然强烈建议使用更好的功能名称来更清楚地区分这两者.代码对于编译器来说不能模糊,但对于阅读它的人来说,它实际上也不应该是模棱两可的.
| 归档时间: |
|
| 查看次数: |
39 次 |
| 最近记录: |