MEJOR SITIO PARA DESARROLLADORES WEB

C++ Tutorial

C++ HOGAR C++ Introducción C++ Empezar C++ Sintaxis C++ Producción C++ Comentarios C++ Variables C++ Entrada de usuario C++ Tipos de datos C++ Operadores C++ Cadenas C++ Matemáticas C++ Booleanos C++ Condiciones C++ Switch C++ While Bucle C++ For Bucle C++ Break/Continue C++ Matrices C++ Estructuras C++ Enumeraciones C++ Referencias C++ Consejos

C++ Funciones

C++ Funciones C++ Parámetros de función C++ Sobrecarga de funciones C++ Alcance C++ Recursión

C++ Clases

C++ POO C++ Clases/Objetos C++ Métodos de clase C++ Constructores C++ Especificadores de acceso C++ Encapsulación C++ Herencia C++ Polimorfismo C++ Archivos C++ Excepciones C++ Fecha

C++ Cómo

Suma dos números Números al azar

C++ Referencia

C++ Referencia C++ Palabras clave C++ <iostream> C++ <fstream> C++ <cmath> C++ <string> C++ <cstring> C++ <ctime>

C++ Ejemplos

C++ Ejemplos C++ Compilador C++ Ejercicios C++ Prueba C++ Certificado

Lenguaje C++. W3Schools lecciones en español

Ua En De

C++ Alcance variable


Ahora que comprende cómo funcionan las funciones, es importante aprender cómo actúan las variables dentro y fuera de las funciones.

En C++, solo se puede acceder a las variables dentro de la región en la que se crean. Esto se llama alcance.


Ámbito local

Una variable creada dentro de una función pertenece al alcance local de esa función y solo se puede usar dentro de esa función:

Ejemplo

void myFunction() {
  // Variable local que pertenece a myFunction
  int x = 5;

  // imprimir la variable x
  cout << x;
}

int main() {
  myFunction();
  return 0;
}
Inténtalo tú mismo »

Una variable local no se puede utilizar fuera de la función a la que pertenece.

Si intentas acceder fuera de la función, se produce un error:

Ejemplo

void myFunction() {
  // Variable local que pertenece a myFunction
  int x = 5;
}

int main() {
  myFunction();

  // Imprime la variable x en la función principal
  cout << x;
  return 0;
}
Inténtalo tú mismo »

Alcance global

Una variable creada fuera de una función se llama variable global y pertenece al alcance global.

Las variables globales están disponibles desde cualquier ámbito, global y local:

Ejemplo

Una variable creada fuera de una función es global y, por lo tanto, puede ser utilizada por cualquier persona:

// variable global x
int x = 5;

void myFunction() {
  // Podemos usar x aquí
  cout << x << "\n";
}

int main() {
  myFunction();

  // También podemos usar x aquí
  cout << x;
  return 0;
}
Inténtalo tú mismo »

Nombrar variables

Si opera con el mismo nombre de variable dentro y fuera de una función, C++ las tratará como dos variables separadas; Uno disponible en el ámbito global (fuera de la función) y otro disponible en el ámbito local (dentro de la función):

Ejemplo

La función imprimirá el x local, y luego el código imprimirá el global x:

// Variable global x
int x = 5;

void myFunction() {
  // Variable local con el mismo nombre que la variable global (x)
  int x = 22;
  cout << x << "\n"; // Se refiere a la variable local x
}

int main() {
  myFunction();

  cout << x; // Se refiere a la variable global x
  return 0;
}
Inténtalo tú mismo »

Sin embargo, debe evitar utilizar el mismo nombre de variable tanto para las variables globales como para las locales, ya que puede generar errores y confusión.

En general se debe tener cuidado con las variables globales, ya que se puede acceder a ellas y modificarlas desde cualquier función:

Ejemplo

Change the value of x from myFunction:

// Variable global x
int x = 5;

void myFunction() {
  cout << ++x << "\n"; // Incrementa el valor de x en 1 e imprimelo
}

int main() {
  myFunction();

  cout << x; // Imprime la variable global x
  return 0;
}

// El valor de x ahora es 6 (ya no es 5)
Inténtalo tú mismo »

Conclusión

En resumen, utilice variables locales (con buenos nombres de variable) tanto como pueda. Esto hará que su código sea más fácil de mantener y de comprender mejor. Sin embargo, puede encontrar variables globales cuando trabaja en programas C++ existentes o cuando colabora con otros. Por lo tanto, es bueno comprender cómo funciona el alcance y cómo usarlo de manera efectiva para asegurarse de que su código sea claro y funcional.



Comentarios