コンパイラ エラー CS0505Compiler Error CS0505

'member1': 'member2' は関数ではないためオーバーライドできません'member1': cannot override because 'member2' is not a function

クラス宣言で、基底クラスのメソッド以外のものをオーバーライドしようとしました。A class declaration attempted to override a non-method in a base class. オーバーライドでは、メンバーの型が一致しなければなりません。Overrides must match the member type. 基底クラスのメソッドと同じ名前のメソッドが必要な場合、基底クラスのメソッド宣言で new をご使用ください ( overrideは使用しない)。If a method with the same name as a method in a base class is desired, use new (and not override) on the method declaration in the base class.

次の例では CS0505 が生成されます。The following sample generates CS0505:

// CS0505.cs  
// compile with: /target:library  
public class clx  
{  
   public int i;  
}  
  
public class cly : clx  
{  
   public override int i() { return 0; }   // CS0505  
}