2012-04-02 18 views
-1

Ich arbeite mit OPNET Modellierer und ich injiziere Code, um mein Szenario zu verbessern. wenn ich Code kompiliere erschien diese Nachricht Syntaxfehler: fehlende ';' vor 'type' aber es bezieht sich auf Übergang, die keine Codezeile haben.Syntaxfehler: fehlende ';' vor 'Typ'

Was ist das Problem?

bitte, Kann mir jemand helfen?

+0

Schauen vorherigen Code, auch, enthalten Header-Dateien –

+1

Nein, nicht ohne Code. Diese Datei muss irgendwo enthalten sein. Überprüfen Sie das Build-Protokoll für die letzte kompilierte Datei und veröffentlichen Sie diese mindestens. –

Antwort

11

Diese Fehlermeldung zeigt an, dass ein Semikolon fehlt. Der häufigste Ort, dies geschieht, ist so etwas wie die folgenden:

class Foo { 

    // ... 

} // <-- NEED SEMICOLON HERE 

int main() { 
    // ... 
} 

Beachten Sie, dass Ihre class Deklaration in einer Header-Datei angezeigt werden kann anstelle einer .cpp Datei.

+3

Ich reklamiere, dass ich Sie über 200k gedrängt habe! Gut verdient auch, wenn Sie diese Frage erfolgreich entschlüsseln. –

+0

@RobertMartin: Prost :) –

6

Dieser Fehler kann auch für einige strenge Compiler auftreten, wenn Sie eine Variable im selben Atemzug deklarieren und zuweisen. Dies kann durch Änderung foo_t my_var = old_var; und Aufspaltung der Aussage in

foo_t my_var; 
my_var = old_var; 

Lächerlich gelöst werden, einige Compiler auch einen Fehler aus, wenn Sie nicht setzen Sie Ihre Variablendeklarationen an der Spitze des Codeblocks. [1]

[1] http://social.msdn.microsoft.com/forums/en-US/vclanguage/thread/974f1b6a-7bad-4be7-a93e-66e6b2f18842

+2

Ich wurde gerade von den c-Erklärungen Sache beim Bau einer Bibliothek (libexif) gefangen. –

+0

Ich habe an einem OpenCL-Host-Code gearbeitet und war von diesem Syntaxfehler verschont - niemals hätte ich gedacht, dass nur oben nach Variablendeklarationen gesucht wird. Danke dafür. –

Verwandte Themen