英語で読む

次の方法で共有


コンパイラ エラー CS0236

フィールド初期化子によって、静的でないフィールド、メソッドまたはプロパティの "名前" を参照することはできません。

インスタンス フィールドを使用して、メソッドの外部にある他のインスタンス フィールドを初期化することはできません。

このエラーを解決するには

メソッドの外部にある変数を初期化する場合には、クラス コンストラクター内で初期化を実行することをご検討ください。 詳細については、「メソッド」を参照してください。

次の例では、CS0236 を生成し、その修正方法を示しています。

C#
public class MyClass
{
    public int i = 5;

    // To fix the error, remove "= i", and uncomment the line in constructor.
    public int j = i;  // CS0236

    public MyClass()
    {
        // Uncomment the following.
        //j = i;
    }
}