Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Artículo
15/02/2023
10 colaboradores
Registros
Rendimiento e interoperabilidad
Punteros de función
Inicializadores de módulo
Ola de advertencias 5
C# 9.0 es compatible con .NET 5. Para obtener más información, vea Control de versiones del
lenguaje C#.
Tipos de registro
C# 9.0 introduce los tipos de registro. Se usa la palabra clave record para de nir un tipo de
referencia que proporciona funcionalidad integrada para encapsular los datos. Puede crear
tipos de registros con propiedades inmutables mediante parámetros posicionales o sintaxis de
propiedades estándar:
C#
Copiar
C#
Copiar
};
C#
fi
fi
Copiar
};
Aunque los registros pueden ser mutables, están destinados principalmente a admitir modelos
de datos inmutables. El tipo de registro ofrece las siguientes características:
Igualdad de valores
Puede utilizar tipos de estructura para diseñar tipos centrados en datos que proporcionen
igualdad de valores y un comportamiento escaso o inexistente. Pero, en el caso de los
modelos de datos relativamente grandes, los tipos de estructura tienen algunas desventajas:
No admiten la herencia.
Son menos e caces a la hora de determinar la igualdad de valores. En el caso de los tipos de
valor, el método ValueType.Equals usa la re exión para buscar todos los campos. En el caso
de los registros, el compilador genera el método Equals. En la práctica, la implementación de
la igualdad de valores en los registros es bastante más rápida.
Usan más memoria en algunos escenarios, ya que cada instancia tiene una copia completa de
todos los datos. Los tipos de registro son tipos de referencia, por lo que una instancia de
registro solo contiene una referencia a los datos.
fi
fi
fl