什么是“;参数和类型参数的名称在实现声明中不必与在定义声明“”中相同;意思是

本文关键字:声明 定义 不必 意思是 参数 类型参数 实现 什么 | 更新日期: 2023-09-27 18:22:33

在阅读C#文档中的"分部方法"时,我发现了以下句子:

参数和类型参数名称在实现声明中不必与在定义声明中相同。

有人能举例说明这句话的意思吗?

什么是“;参数和类型参数的名称在实现声明中不必与在定义声明“”中相同;意思是

这意味着以下代码,注意参数名称,成功编译:

// Definition in file1.cs
partial void Foo(string foo);
// Implementation in file2.cs
partial void Foo(string bar)
{
  // method body
}

正如接口的情况一样:

public interface IFoo
{
    void Bar(string baz);
}
public class Foo : IFoo
{
    public void Bar(string qux)
    {
    }
}

重要的是参数顺序。您可以在实现中选择所需的任何有效名称。

对于"类型参数名称"部分,该部分专门讨论泛型(TV),其中顺序同样重要,而不是名称:

// Definition in file1.cs
partial void Foo<T>(string foo);
// Implementation in file2.cs
partial void Foo<V>(string bar)
{
  // method body
}