Structures (Guide de programmation C#)
Mise à jour : novembre 2007
Les structs sont définis à l'aide du mot clé struct, par exemple :
public struct PostalAddress
{
// Fields, properties, methods and events go here...
}
Les structs partagent presque tous la même syntaxe que les classes, bien qu'ils soient plus limités que ces dernières :
Dans une déclaration de structure, les champs ne peuvent pas être initialisés à moins qu'ils ne soient déclarés comme const ou static.
Un struct ne peut pas déclarer de constructeur (un constructeur sans paramètres) ni de destructeur par défaut.
Les structs ne peuvent pas hériter d'autres structs ou classes.
Les structs sont copiés lors de l'assignation. Lorsqu'un struct est assigné à une nouvelle variable, toutes les données sont copiées et les modifications apportées à la nouvelle copie ne changent pas les données de la copie d'origine.
Les structs sont des types valeur et les classes des types référence.
Contrairement aux classes, les structs peuvent être instanciés sans recours à un opérateur New.
Les structs peuvent déclarer des constructeurs qui ont des paramètres.
Un struct ne peut pas hériter d'un autre struct ou d'une classe ; il ne peut pas non plus servir de base à une classe. Tous les structs héritent directement de System.ValueType, qui hérite de System.Object.
Un struct peut implémenter des interfaces.
Un struct peut être utilisé comme un type nullable et peut se voir assigner une valeur nulle.
Rubriques connexes
Pour plus d'informations :