Comment utiliser extern pour partager des variables entre fichiers en C++ ?
Bonjour ! Je suis un développeur C++ débutant et j'ai rencontré un problème : j'ai un projet composé de plusieurs fichiers, et j'ai besoin d'utiliser une variable commune dans différents fichiers .cpp. J'ai essayé de déclarer la variable dans un fichier et de l'utiliser dans un autre, mais le compilateur génère une erreur "undefined reference" ou "multiple definition".
Voici un exemple simplifié : j'ai un fichier `main.cpp` :
```cpp
#include
#include "functions.h"
int main() {
global_var = 5;
print_var();
return 0;
}
```
Le fichier `functions.h` :
```cpp
#ifndef FUNCTIONS_H
#define FUNCTIONS_H
int global_var; // déclaration de la variable
void print_var();
#endif
```
Et `functions.cpp` :
```cpp
#include
#include "functions.h"
void print_var() {
std::cout << "globa