Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Mezcla de declaraciones y variables en deconstrucción
Patrones de propiedades extendidos
Registro sellado ToString
API del generador de código fuente v2
AsyncMethodBuilder de nivel de método
CSharp11
1100
Versión 11.0 del lenguaje C#
Características:
Literales de cadena sin formato
Miembros abstractos estáticos en interfaces
Atributos genéricos
Nuevas líneas en interpolaciones
Patrones de lista
Miembros requeridos
Patrón de constante de caracteres> de intervalo<
Struct auto-default
Nameof(parameter)
Operadores definidos por el usuario checked
Literales de cadena de UTF-8
Operador de desplazamiento a la derecha sin signo
Operador de desplazamiento relajado
Campos ref
Tipos locales de archivo
CSharp12
1200
Versión 12.0 del lenguaje C#
Características:
Constructores principales
Uso de alias para cualquier tipo
Nombre de los miembros de la instancia de acceso
Matrices insertadas
Expresiones de colección
Ref readonly parameters
Parámetros opcionales lambda
CSharp2
2
Versión 2 del lenguaje C#
CSharp3
3
Versión 3 del lenguaje C#
Características: LINQ.
CSharp4
4
Versión 4 del lenguaje C#
Características: dinámicas.
CSharp5
5
Versión 5 del lenguaje C#
Características: atributos de información de llamada asincrónicos.
CSharp6
6
Versión 6 del lenguaje C#
Características:
Uso de una clase estática
Filtros de excepciones
Await en bloques catch y finally
Inicializadores de propiedades automáticas
Propiedades y métodos con forma de expresión
Operador de propagación null ?.
Interpolación de cadenas
operador nameof
Inicializador de diccionario
CSharp7
7
Versión del lenguaje C# 7.0
Características:
Variables out
Coincidencia de patrones
Tuplas
Deconstrucción
Descartes
Funciones locales
Separadores de dígitos
Valores devueltos y variables locales
Tipos de valor devueltos de async generalizados
Más miembros con forma de expresión
Expresiones throw
CSharp7_1
701
Versión del lenguaje C# 7.1
Características:
Principal asincrónico
Literal predeterminado
Nombres de elementos de tupla inferidos
Coincidencia de patrones con genéricos
CSharp7_2
702
Versión del lenguaje C# 7.2
Características:
Ref readonly
Estructuras ref y readonly
Extensiones de referencia
Operador ref condicional
Private protected
Separadores de dígitos después del especificador base
Argumentos con nombre no finales
CSharp7_3
703
Versión del lenguaje C# 7.3
Características:
La indexación de campos fijos no requiere anclar
Las variables locales ref se pueden reasignar
las matrices stackalloc admiten inicializadores
Más tipos admiten la instrucción fija
Restricciones genéricas mejoradas
Compatibilidad con tuplas == y !=
Asociación de atributos a los campos de respaldo para las propiedades autoimplementadas
Mejoras en la resolución de sobrecargas de métodos cuando los argumentos difieren en "in"
Ampliación de variables de la expresión en inicializadores
Mejoras en los candidatos de sobrecarga
Nuevas opciones del compilador (-publicsign y -pathmap)
CSharp8
800
Versión del lenguaje C# 8.0
Características:
Miembros de solo lectura
Métodos de interfaz predeterminados
Mejoras de coincidencia de patrones (expresiones switch, patrones de propiedad, patrones de tupla y patrones posicionales)
Declaraciones using
Funciones locales estáticas
Estructuras ref descartables
Tipos de referencia que aceptan valores NULL
Secuencias asincrónicas
Asincrónica descartable
Índices y rangos
Asignación de uso combinado de NULL
Tipos construidos no administrados
Stackalloc en expresiones anidadas
Mejora de las cadenas textuales interpoladas
CSharp9
900
Versión del lenguaje C# 9.0
Características:
Registros
Establecedores de solo inicialización
Instrucciones de nivel superior
Mejoras de coincidencia de patrones
Enteros con tamaño nativos
Punteros de función
Supresión de la emisión de la marca localsinit
Expresiones nuevas con tipo de destino
Funciones anónimas estáticas
Expresiones condicionales con tipo de destino
Tipos de valor devueltos de covariante
Compatibilidad con GetEnumerator de extensiones para bucles foreach
Parámetros de descarte lambda
Atributos en funciones locales
Inicializadores de módulo
Nuevas características para métodos parciales
Default
0
La versión de idioma predeterminada, que es la versión compatible más reciente.
Latest
2147483647
La versión más reciente admitida del idioma.
LatestMajor
2147483645
La versión principal más reciente admitida.
Preview
2147483646
Vista previa de la siguiente versión de idioma.
Se aplica a
Colaborar con nosotros en GitHub
El origen de este contenido se puede encontrar en GitHub, donde también puede crear y revisar problemas y solicitudes de incorporación de cambios. Para más información, consulte nuestra guía para colaboradores.