Saltar al contenido

Declarando e inicializando las variables en C#

Las variables locales son variables declaradas dentro de un bloque de código, que suele formar parte de un método, propiedad o delegado. En las declaraciones se especifica el tipo seguido del nombre y, opcionalmente, la inicialización. La inicialización establece la variable en una nueva instancia. Debe ser de un tipo compatible con el tipo de declaración.

12345staticvoidMain(string[] args){string a ="Hello World"; Console.WriteLine(a);}

cs

Declarando e inicializando las variables en C#
Declarando e inicializando las variables en C#

En el código anterior, la variable a se declara como una cadena y se inicializa como «Hola Mundo». La declaración de abajo logra precisamente el mismo resultado.

1var a ="Hello World";

cs

La palabra clave var especifica la tipificación implícita. El código no especifica el tipo, y el compilador puede inferir el tipo a partir de la inicialización. El compilador reconoce que el literal dentro de las comillas dobles es una cadena y declara la variable como tal. Las variables con tipificación implícita no deben confundirse con los tipos de variantes. var mantiene los mecanismos de seguridad de tipo de C# y no permite un cambio de tipo después de la declaración.

Las variables escritas explícitamente pueden añadir legibilidad al código cuando no está claro qué tipo de datos infiere el compilador. Las variables escritas implícitamente son menos verbosas y requieren menos cambios al refactorizar. Los equipos deben crear directrices sobre cuándo usar declaraciones de tipo explícitas e implícitas.

El código debe inicializar las variables locales antes de su uso. Este código causa un error de compilación.

12345staticvoidMain(string[] args){string a; Console.WriteLine(a);}

cs

Inicializar la variable a a su valor por defecto de nulo o por defecto para arreglar este problema.

12345staticvoidMain(string[] args){string a =null; Console.WriteLine(a);}

cs

Las variables locales tienen un alcance máximo del método que las contiene. Esto significa que el código fuera del método no puede utilizar la declaración. Para más información sobre el alcance de las variables, por favor vea este artículo.