Domanda

Sto cercando di capire come ottenere e impostare le proprietà per i campi, ed eseguire questo problema, qualcuno può spiegarmi perché ho dovuto rendere statico il campo int X per farlo funzionare?

using System;

namespace ConsoleApplication1
{
    class Program
    {
        public static int X = 30;
        public static void Main()
        {
            var cX = new testme();
            cX.intX = 12;
            Console.WriteLine(cX.intX);
            cX.intX = X;
            Console.WriteLine(cX.intX);
            Console.ReadKey();
        }
    }
    class testme
    {
        public int intX
        {
            get;
            set;
        }
    }
}
È stato utile?

Soluzione

Dato che stavi usando il campo in un contesto statico, in questo caso il metodo publicstatic void Main . Poiché la tua classe Program viene eseguita staticamente, non esiste un'istanza e pertanto non puoi accedere a nessun membro dell'istanza.

Altri suggerimenti

perché è utilizzato in un metodo statico

Poiché Main è statico, non è possibile accedere alle istanze non statiche dall'esterno.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top