Extern en C++

Extern en C++

En el lenguaje de programación C++, la palabra clave extern se utiliza para declarar una variable o una función que ya ha sido definida en otro lugar. Al declarar una variable o función como extern, le decimos al compilador que la variable o función ya existe en otro archivo o módulo de programa. Esta declaración externa permite que los programas se conecten y reutilicen funciones y variables definidas en diferentes partes del mismo programa o incluso en diferentes programas.

📋 Aquí podrás encontrar✍
  1. Declaración de variables externas
  2. Declaración de funciones externas
  3. Declaración y definición de variables y funciones externas
  4. Ejemplos de uso de extern
    1. Declaración externa de variables
    2. Declaración externa de funciones
  5. Conclusión
  6. Preguntas frecuentes
    1. ¿Puedo declarar una variable como externa y definirla en el mismo archivo?
    2. ¿Puedo usar una variable o función externa en una clase?
    3. ¿Qué sucede si declaro una variable o función como externa pero nunca la defino?
    4. ¿Puedo declarar dos variables con el mismo nombre en diferentes partes del programa?

Declaración de variables externas

La declaración externa se utiliza para indicarle al compilador que una variable ya ha sido definida en otra parte del programa, y que se puede usar en la sección actual del programa sin que sea necesario volver a definirla. La sintaxis de una variable externa se muestra a continuación:

extern int count;

En este ejemplo, se declara una variable externa llamada "count" de tipo entero. Esta variable ya ha sido definida en algún otro lugar del programa, y la declaración externa le indica al compilador que la variable existe y se puede utilizar en esta sección del programa.

Declaración de funciones externas

Al igual que con las variables, las funciones también se pueden declarar externas. Una declaración externa de una función le indica al compilador que la función ya ha sido definida en otra parte del programa y se puede utilizar en la sección actual del programa sin necesidad de volver a definirla. La sintaxis de una función externa se muestra a continuación:

extern void nombre_funcion();

En este ejemplo, se declara una función externa llamada "nombre_funcion" que ya ha sido definida en algún otro lugar del programa.

Declaración y definición de variables y funciones externas

En C++, una variable o función externa debe ser definida en algún lugar del programa. Declarar una variable o función como extern no es suficiente por si solo. La definición de una variable o función externa proporciona la ubicación y los detalles completos de la variable o la función.

La sintaxis para la definición de una variable externa se muestra a continuación:

int count;

En este ejemplo, se define una variable externa llamada "count" de tipo entero.

La sintaxis para la definición de una función externa se muestra a continuación:

void nombre_funcion() 
{
  // Código de la función
}

En este ejemplo, se define la función externa llamada "nombre_funcion".

Ejemplos de uso de extern

A continuación, se muestran algunos ejemplos de uso de la palabra clave extern en C++:

Declaración externa de variables

En el archivo "archivo1.cpp":

// Definimos la variable
int count = 5;

En el archivo "archivo2.cpp":

// Declaramos 'count' como externa
extern int count;

int main() 
{
  // Imprimimos el valor de la variable 'count'
  cout << count << endl;
  return 0;
}

En este ejemplo, la variable "count" se define en el archivo "archivo1.cpp" y se declara como externa en el archivo "archivo2.cpp". La declaración externa muestra al compilador que la variable "count" ya existe en otro lugar del programa y se puede usar en el archivo "archivo2.cpp" sin necesidad de volver a definirla.

Declaración externa de funciones

En el archivo "archivo1.cpp":

// Definimos la función
void nombre_funcion() 
{
  cout << "Hola, mundo!" << endl;
}

En el archivo "archivo2.cpp":

// Declaración externa de la función
extern void nombre_funcion();

int main() 
{
  // Llamamos a la función 'nombre_funcion'
  nombre_funcion();

  return 0;
}

En este ejemplo, la función "nombre_funcion" se define en el archivo "archivo1.cpp" y se declara como externa en el archivo "archivo2.cpp". La declaración externa muestra al compilador que la función "nombre_funcion" ya existe en otro lugar del programa y se puede utilizar en el archivo "archivo2.cpp" sin necesidad de volver a definirla.

Conclusión

La palabra clave extern se utiliza para declarar variables y funciones que ya han sido definidas en otro lugar del programa. Las declaraciones externas permiten que los programas se construyan a partir de módulos o archivos separados que se conectan y reutilizan entre sí.

Preguntas frecuentes

¿Puedo declarar una variable como externa y definirla en el mismo archivo?

Sí, se puede declarar y definir una variable externa en el mismo archivo. La declaración externa simplemente le indica al compilador que la variable ya ha sido definida en otro lugar del programa.

¿Puedo usar una variable o función externa en una clase?

Sí, se puede usar una variable o función externa en una clase, siempre y cuando se declare correctamente. La variable o función externa debe declararse en el archivo de origen junto con la clase.

¿Qué sucede si declaro una variable o función como externa pero nunca la defino?

Si declara una variable o función como externa pero nunca la define, el compilador generará un error al intentar compilar el archivo que hace referencia a la variable o función. La definición de la variable o función debe proporcionarse en algún otro archivo del programa.

¿Puedo declarar dos variables con el mismo nombre en diferentes partes del programa?

No, si declara dos variables con el mismo nombre en diferentes partes del programa, el compilador generará un error de "redefinición". Cada variable debe tener un nombre único dentro del programa.

Deja una respuesta

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

Subir