Saltar al contenido

¿Qué significa el símbolo @ antes de un nombre de variable en C#?

Si te encuentras con algo que te causa duda puedes comentarlo y trataremos de ayudarte lo mas rápido que podamos.

Solución:

El símbolo @ le permite usar una palabra reservada. Por ejemplo:

int @class = 15;

Lo anterior funciona, cuando lo siguiente no lo haría:

int class = 15;

El símbolo @ tiene 2 propósitos en C#:

En primer lugar, te permite usar una palabra clave reservada como una variable como esta:

int @int = 15;

La segunda opción le permite especificar un string sin tener que escapar de ningún carácter. Por ejemplo, el carácter ” es un carácter de escape, por lo que normalmente deberá hacer esto:

var myString = "c:\myfolder\myfile.txt"

alternativamente puedes hacer esto:

var myString = @"c:myFoldermyfile.txt"

Un punto importante que olvidaron las otras respuestas es que “@palabra clave” se compila en “palabra clave” en el CIL.

Por lo tanto, si tiene un marco creado, por ejemplo, en F#, que requiere que defina una clase con una propiedad denominada “clase”, puede hacerlo.

No lo es que útil en la práctica, pero no tenerlo evitaría que C# tenga algunas formas de interoperabilidad entre lenguajes.

Por lo general, lo veo usado no para la interoperabilidad, sino para evitar las restricciones de palabras clave (generalmente en nombres de variables locales, donde este es el solamente efecto) es decir.

private void Foo()
   int @this = 2;

¡pero lo desaconsejaría encarecidamente! Simplemente encuentre otro nombre, incluso si el ‘mejor’ nombre para la variable es uno de los nombres reservados.

Si te gusta este mundo, tienes la opción de dejar un artículo acerca de qué le añadirías a esta reseña.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *