2017-12-11 8 views
-2

私は、このエラーが発生します:私はインターフェイスを実装しますが、私は、「インターフェイスメンバを実装していません」を取得

CalculatorCalories does not implement interface member ICalculatorCalories.GetIndex

をしかし、私はインターフェイスのメソッド実装:あなたが定義したICalculatorCalories

namespace WindowsFormsApp1 
{ 
    public interface ICalculatorCalories 
    { 
     int GetIndex { get; } 
    } 

    public partial class CalculatorCalories : Form, ICalculatorCalories 
    { 
     public CalculatorCalories() 
     { 
      InitializeComponent(); 
     } 

     public int GetIndex(int growthC, int sex) 
     { 
      int index = growthC - 100 - ((growthC - 150)/sex); 
      return index; 
     } 
    } 
} 

答えて

3

GetIndexを実装した関数の代わりにゲッタープロパティとして使用します。クラスがインタフェースを実装するためには、メソッド/プロパティのシグネチャが一致しなければなりません。

インターフェイスを固定提案:

public interface ICalculatorCalories 
{ 
    int GetIndex(int growthC, int sex); 
} 
4

インターフェースは、実装のGetIndexメソッドである読み取り専用プロパティを定義するため、問題です。どちらか一方を変更する必要があります。

おそらく、あなたへのインターフェースを編集します。

public interface ICalculatorCalories 
{ 
    int GetIndex(int growthC, int sex); 
} 
関連する問題