Erreur de lien de variable statique [Duplicata]
En programmation C, une erreur de lien peut se produire lorsqu'une variable statique est déclarée mais non définie dans le code. Cette erreur indique que l'éditeur de liens ne trouve pas la définition de la variable statique pendant la phase de liaison.
Dans le code donné, la classe Log a une variable statique theString déclarée dans le fichier d'en-tête Log.h, mais elle est non défini dans le fichier d'implémentation Log.cpp. Pour résoudre l'erreur de lien, la variable statique doit être définie dans le fichier d'implémentation.
Le code corrigé dans Log.cpp doit être :
#include "Log.h" #include <ostream> string Log::theString; // Define the static variable here void Log::method(string arg) { theString = "hola"; cout << theString << endl; }
De plus, il est recommandé de supprimer le en utilisant l'espace de noms std ; ligne du fichier d’en-tête. Cette pratique évite de polluer l'espace de noms global avec des symboles std, ce qui peut entraîner des conflits de noms et des erreurs potentielles.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!