Condividi tramite


Strutture (Visual C# Express)

Aggiornamento: novembre 2007

Una struttura in C# è simile a una classe, sebbene sia priva di determinate funzionalità, come l'ereditarietà. Poiché inoltre una struttura è un tipo di valore, può in genere essere creata più rapidamente di una classe. Se si dispone di cicli rigidi in cui vengono create numerose nuove strutture di dati, è consigliabile utilizzare una struttura anziché una classe. Le strutture sono inoltre utilizzate per incapsulare gruppi di campi di dati come coordinate di un punto in una griglia oppure dimensioni di un rettangolo. Per ulteriori informazioni, vedere Classi (Visual C# Express).

Esempio

In questo programma di esempio viene definito uno struct per archiviare una località geografica. Viene inoltre eseguito l'override del metodo ToString() per ottenere un output più utile quando viene visualizzato nell'istruzione WriteLine. Poiché non sono presenti metodi nello struct, la sua definizione come classe non presenta alcun vantaggio.

struct GeographicLocation
{
    private double longitude;
    private double latitude;

    public GeographicLocation(double longitude, double latitude)
    {
        this.longitude = longitude;
        this.latitude = latitude;
    }

    public override string ToString()
    {
        return System.String.Format("Longitude: {0} degrees, Latitude: {1} degrees", longitude, latitude);
    }
}

class Program
{
    static void Main()
    {
        GeographicLocation Seattle = new GeographicLocation(123, 47);
        System.Console.WriteLine("Position: {0}", Seattle.ToString());
    }
}

Output

L'output di questo esempio è simile al seguente:

Position: Longitude: 123 degrees, Latitude: 47 degrees

Vedere anche

Concetti

Guida per programmatori C#

Nozioni di base del linguaggio C#

Classi (Visual C# Express)

Riferimenti

classe

struttura

Classi e strutture (Guida per programmatori C#)