Structs (Guía de programación de C#)
Los structs se definen mediante la palabra clave struct, por ejemplo:
public struct PostalAddress
{
// Fields, properties, methods and events go here...
}
Casi todas los structs comparten la misma sintaxis que las clases, aunque están más limitadas que éstas:
Dentro de una declaración de struct, los campos no se pueden inicializar a menos que se declaren como constantes o estáticos.
Un struct no puede declarar un constructor predeterminado (es decir, un constructor sin parámetros) ni un destructor.
Los structs se copian en la asignación. Cuando se asigna un struct a una nueva variable, se copian todos los datos, y cualquier modificación que se realice en la nueva copia no afecta a los datos de la copia original. Es importante tenerlo en cuenta a la hora de usar colecciones de tipos de valor como Dictionary<string, myStruct>.
Los structs son tipos de valor y las clases son tipos de referencia.
A diferencia de las clases, es posible crear instancias de los structs sin utilizar un operador new.
Los structs pueden declarar constructores que tienen parámetros.
Un struct no puede heredar de otro struct o clase, ni puede ser la base de una clase. Todos los structs heredan directamente de System.ValueType, que hereda de System.Object.
Un struct puede implementar interfaces.
Un struct se puede utilizar como tipo que acepta valores null y se le puede asignar un valor null.
Secciones relacionadas
Para obtener más información:
Vea también
Referencia
Clases y structs (Guía de programación de C#)
Clases (Guía de programación de C#)