Fehler bei nicht deklarierten Bezeichnern: Ursachen und Lösungen
Fehler bei nicht deklarierten Bezeichnern treten auf, wenn der Compiler auf einen Verweis auf eine Variable, eine Funktion oder einen Typ stößt wurde im aktuellen Bereich nicht deklariert oder definiert. Diese Fehler werden typischerweise durch einen der folgenden Gründe verursacht:
Fehlende Einbeziehung der Header-Datei
Die häufigste Ursache für nicht deklarierte Identifikatorfehler ist das Fehlen der erforderlichen Header-Datei das die Deklaration des Bezeichners enthält. In C würde beispielsweise das folgende Beispiel einen „nicht deklarierten Bezeichner“-Fehler für die „cout“-Funktion generieren:
int main() { cout << "Hello world!" << endl; return 0; }
Um dieses Problem zu beheben, fügen Sie den Falsch geschriebene Variablen oder Funktionen Eine weitere häufige Quelle dieser Fehler sind falsch geschriebene Bezeichner. Beispielsweise würde der folgende Code aufgrund der falsch geschriebenen Variable „AComplicatedName“ in der zweiten Zeile einen Fehler erzeugen: Incorrect Scope Identifiers must deklariert werden im gleichen Bereich, in dem auf sie verwiesen wird. In diesem Beispiel sollte beispielsweise „std::string“ verwendet werden, um sowohl „s1“ als auch „s2“ zu deklarieren: Use Before Declaration In einigen Programmiersprachen, wie z. B. C, müssen Bezeichner vor ihrer Verwendung deklariert werden. Wenn auf eine Funktion oder Variable vor ihrer Deklaration verwiesen wird, generiert der Compiler einen Fehler „nicht deklarierter Bezeichner“. Zum Beispiel: Um diesen Fehler zu beheben, verschieben Sie entweder die Definition von „g“ vor „f“: Oder fügen Sie eine Deklaration von „g“ vor „f“ hinzu ': stdafx.h nicht oben (Visual Studiospezifisch) In Visual Studio muss die Zeile „#include „stdafx.h““ die erste Codezeile sein, um andere Headerdateien korrekt zu verarbeiten. Wenn diese Zeile weggelassen oder nicht oben platziert wird, ignoriert der Compiler möglicherweise nachfolgende Deklarationen, was zu Fehlern aufgrund nicht deklarierter Bezeichner führt. Zum Beispiel: In diesem Beispiel ist das „#include Das obige ist der detaillierte Inhalt vonWarum erhalte ich in meinem Code die Fehlermeldung „Nicht deklarierte Kennung'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!#include
int main() {
int aComplicatedName;
AComplicatedName = 1; /* mind the uppercase A */
return 0;
}
#include <string>
int main() {
std::string s1 = "Hello"; // Correct.
string s2 = "world"; // WRONG - would give error.
}
void f() { g(); }
void g() { }
void g() { }
void f() { g(); }
void g(); // declaration
void f() { g(); }
void g() { } // definition
#include <iostream>
#include "stdafx.h"
#include "stdafx.h"
#include <iostream>