C# Ámbito de variables

En C#, el ámbito de una variable define la visibilidad y el ciclo de vida de la variable.

El ámbito de una variable generalmente se determina mediante el bloque de código{}definido por llaves.

A continuación se presentan algunas reglas básicas sobre el ámbito de variables en C#:

Variables locales

Las variables declaradas dentro de bloques de código como métodos, bucles, sentencias condicionales, etc., son variables locales; solo son visibles en el bloque de código donde se declaran.

Ejemplo

void MyMethod()
{
    int localVar = 10; // Variable local
    // ...
}
// localVar no es visible aquí

Ámbito de bloque

En C# 7 y versiones posteriores, se introduce el ámbito de bloque, es decir, usando llaves{}cualquier bloque creado puede definir el ámbito de una variable.

Ejemplo

{
    int blockVar = 20; // Ámbito de bloque
    // ...
}
// blockVar no es visible aquí

Ámbito de parámetros de método

Los parámetros de un método también tienen su propio ámbito; son visibles en todo el método.

Ejemplo

void MyMethod(int parameter)
{
    // parameter es visible en todo el método
    // ...
}

Variables globales

Las variables definidas a nivel de miembro de una clase son variables miembro y son visibles en toda la clase; si se definen a nivel de espacio de nombres, son visibles en todo ese espacio de nombres.

Ejemplo

class MyClass
{
    int memberVar = 30; // Variable miembro, visible en toda la clase
}

Ámbito de variables estáticas

Las variables estáticas se declaran a nivel de clase, pero su ámbito también está limitado a la clase en la que se definen.

Ejemplo

class MyClass
{
    static int staticVar = 40; // Variable estática, visible en toda la clase
}

Ámbito de variables de bucle

La variable de bucle declarada en un bucle for es visible dentro del cuerpo del bucle.

。

Ejemplo

for (int i = 0; i < 5; i++)
{
    // i es visible dentro del cuerpo del bucle
}
// i no es visible aquí

En general, el ámbito de las variables ayuda a gestionar la visibilidad y el ciclo de vida de las variables, asegurando que se utilicen dentro de su alcance válido y también ayuda a prevenir conflictos de nombres.

Otras extensiones