Avatar ·

Wann man extern in C++ verwendet: globale Variablen und Codeaufteilung

Hallo Kollegen! Ich lerne C++ und komme mit dem Schlüsselwort `extern` nicht klar. Ich habe die Dokumentation gelesen, bin aber immer noch verwirrt.\n\nDie Sache ist die, dass ich ein kleines Programm schreibe, das auf mehrere Dateien aufgeteilt ist. Ich habe `main.cpp`, `utils.cpp` und `utils.h`. Ich möchte eine globale Variable in `utils.cpp` deklarieren und sie dann in `main.cpp` verwenden. Der Compiler meckert mit "multiple definition" oder "undefined reference". Ich habe verschiedene Varianten ausprobiert, aber ohne Erfolg.\n\nHier ist ein Beispiel meines Codes:\n\n**utils.h:**\n```cpp\nint globalCounter = 0;\nvoid incrementCounter();\n```\n\n**utils.cpp:**\n```cpp\n#include "utils.h"\nvoid incrementCounter() {\n globalCounter++;\n}\n```\n\n**main.cpp:**\n```cpp\n#include "utils.h"\n#include \nint main() {\n incrementCounter();\n std::cout <