使用英语阅读

通过


编译器错误 CS0542

“用户定义类型”: 成员名称不能与它们的封闭类型相同

类或结构的成员不能与类或结构同名,除非该成员是一个构造函数。

下面的示例生成 CS0542:

C#
// CS0542.cs  
class C  
{  
    public int C;  
}  

如果无意中将返回类型放在构造函数中(实际上会使其成为普通方法),则可能导致此错误。 下面的示例将生成 CS0542,因为 F 是一种方法,不是构造函数,因为它具有返回类型:

C#
// CS0542.cs  
class F  
{  
   // Remove void from F() to resolve the problem.  
   void F()   // CS0542, same name as the class  
   {  
   }  
}  
  
class MyClass  
{  
   public static void Main()  
   {  
   }  
}