Avatar ·

Cómo usar extern para compartir variables entre archivos en C++?

¡Saludos! Soy un desarrollador principiante de C++ y me encontré con un problema: tengo un proyecto que consta de varios archivos y necesito usar una variable compartida en diferentes archivos .cpp. Intenté declarar la variable en un archivo y usarla en otro, pero el compilador arroja un error "undefined reference" o "multiple definition". Aquí hay un ejemplo simplificado: tengo un archivo `main.cpp`: ```cpp #include #include "functions.h" int main() { global_var = 5; print_var(); return 0; } ``` El archivo `functions.h`: ```cpp #ifndef FUNCTIONS_H #define FUNCTIONS_H int global_var; // declaración de variable void print_var(); #endif ``` Y `functions.cpp`: ```cpp #include #include "functions.h" void print_var() { std::cout << "global_var = " << global_var << std::endl; } ``` Al intentar compilar esto (por ejemplo, con `g++ main.cpp functions.cpp -o program`) obtengo un error "multiple definition of `global_var`". He oído