Partager via


Structures (Visual C# Express)

Mise à jour : novembre 2007

Un struct en C# est semblable à une classe, mais les structs manquent de certaines fonctionnalités, telles que l'héritage. De plus, puisqu'un struct est un type valeur, il peut être créé en général plus vite qu'une classe. Si vous avez des boucles serrées dans lesquelles les nouvelles structures de données sont créées en grand nombre, vous devez envisager d'utiliser un struct au lieu d'une classe. Les structs sont également utilisés pour encapsuler des groupes de champs de données tels que les coordonnées d'un point sur une grille, ou les dimensions d'un rectangle. Pour plus d'informations, consultez Classes (Visual C# Express).

Exemple

Cet exemple de programme définit une struct servant à stocker un emplacement géographique. Elle substitue également la méthode ToString(), afin de produire une sortie plus utile une fois affichée dans l'instruction WriteLine. Comme le struct ne comprend aucune méthode, il n'y a aucun intérêt à le définir comme une classe.

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());
    }
}

Sortie

Le résultat généré par cet exemple présente l'aspect suivant :

Position: Longitude: 123 degrees, Latitude: 47 degrees

Voir aussi

Concepts

Guide de programmation C#

Initiation au langage C#

Classes (Visual C# Express)

Référence

classe

struct

Classes et structs (Guide de programmation C#)