Maison > développement back-end > C++ > Pourquoi est-ce que j'obtiens une erreur de lien variable statique en C ?

Pourquoi est-ce que j'obtiens une erreur de lien variable statique en C ?

Patricia Arquette
Libérer: 2024-12-31 08:02:09
original
407 Les gens l'ont consulté

Why Am I Getting a Static Variable Link Error in C  ?

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;
}
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal