Saltar al contenido

Consumir estructuras de sólo lectura en C#

Las estructuras comparten una sintaxis muy similar a las clases. Hay una restricción que te dice que el nombre debe ser un nombre identificador de C# válido. La restricción dice que el nombre puede comenzar con una letra o el carácter de subrayado (_).

Las limitaciones de las estructuras incluyen:

Consumir estructuras de sólo lectura en C#
Consumir estructuras de sólo lectura en C#
  1. Durante la declaración sólo se pueden inicializar los campos estáticos o constantes.
  2. No puedes declarar un finalizador, también conocido como constructor sin parámetros.
  3. Las instrucciones se copian en la asignación.
  4. Las estructuras son tipos de valores, mientras que las clases son tipos de referencia.
  5. Las estructuras pueden tener constructores que acepten parámetros.
  6. Las estructuras no pueden heredar de otra estructura o clase. Heredan de los tipos de valor, que heredan de los tipos de objetos.
  7. Las estructuras pueden tener interfaces.
  8. Las estructuras no pueden ser nulas, lo que significa que no pueden asignar a ninguna de sus variables el valor nulo a menos que se declaren como nulas.

Veamos un ejemplo de una estructura.

123456789101112publicstruct Device{publicstring DeviceType {get;set;}publicstring Name {get;set;}publicint Serial {get;set;}publicDevice(string devicetype,string name,int serial){ DeviceType = devicetype; Name = name; Serial = serial;}}

csharp

La primera diferencia que observamos es que la palabra clave de la estructura se utiliza en la declaración. Como regla general, hay que recordar que las estructuras son básicamente contenedores de datos, y aunque las clases también pueden ser contenedores de datos, están diseñadas para algo más. Cuando tengas dudas, necesitas decidir si quieres usar la semántica de valores o la semántica de referencia en tu aplicación. La primera proviene de estructuras , la segunda proviene de clases .

Este tipo de estructura puede ser modificada libremente. Puede cambiar el Nombre, el Tipo de Dispositivo y el Serial después de la instanciación. La gente más experta en tecnología también es consciente de que incluso puedes modificar el contenido de esta manera y cambiarlo a otra instancia. En resumen, esta estructura es una estructura de datos mutable .