编译器错误 CS0540

编译项目报错:包含类型不实现接口,CS0540

原因:试图在非派生自接口的类中实现接口成员。

解决方案: 删除接口成员的实现,或将接口添加到类的基类列表。

 

下面的两个示例生成 CS0540:

一、

 

 1 // CS0540.cs  
 2 interface I  
 3 {  
 4    void m();  
 5 }  
 6   
 7 public class Clx  
 8 {  
 9    void I.m() {}   // CS0540  
10 }  
11   
12 // OK  
13 public class Cly : I  
14 {  
15    void I.m() {}  
16    public static void Main() {}  
17 }

二、

 1 // CS0540_b.cs  
 2 using System;  
 3 class C {  
 4    void IDisposable.Dispose() {}   // CS0540  
 5 }  
 6   
 7 class D : IDisposable {  
 8    void IDisposable.Dispose() {}  
 9    public void Dispose() {}  
10   
11    static void Main() {  
12       using (D d = new D()) {}  
13    }  
14 }
posted @ 2019-08-30 11:50  钱恩基  阅读(216)  评论(0编辑  收藏  举报