C++ "erwartet, primary-expression before '(' token" - Fehler
Habe ich diesen code:
FILE *f = fopen(intPath, "r");
Node *n;
if (f) {
try {
n = parse(f, intPath);
} catch (SyntaxError e) {
fclose(f); /***** line 536 *****/
throw LangException(
builtin_classes::exception_class::create_ImportError(
String::fromAscii(e.filename)->
append(String::fromAscii(":"))->
append(String::fromInt(e.line))->
append(String::fromAscii(":"))->
append(String::fromInt(e.col))->
append(String::fromAscii(": syntax error: "))->
append(String::fromAscii(e.message))
);
}
fclose(f);
return n->eval(scope);
} else {
throw LangException(
builtin_classes::exception_class::create_ImportError(
String::fromAscii("failed to open file for reading")
),
line,
col
);
}
Und der compiler gibt diesen Fehler:
Knoten.cpp:537:40: Fehler: expected primary-expression before
‘(’
token
Knoten.cpp:544:94: Fehler: expected‘)’
vor‘;’
token
Ich habe keine Ahnung, was es sein könnte, vor allem, da das code-Beispiel hat sich eine weitere Aussage, die nicht die gleiche Sache, und es nicht zu einem Fehler.
- Was, Sie don ' T Zeit haben, zu formatieren, richtig?
- Auch, in Zukunft, bitte stellen Sie eine ordnungsgemäße testcase. Wir haben keine Ahnung, was diese
LangException
,builtin_classes
,String
Typen sind und Ihr code ungültig ist, seine eigenen (auch nicht in Anbetracht der Fehler, du bist hier in etwa). - Ich bin enttäuscht, dass hier ist ein Kerl, der schon für 9months, und noch Beiträge Fragen der Qualität.
- Nur 48 rep, würde ich sagen, dass er/Sie wahrscheinlich nicht oft hier. Er kam hier zum ersten mal vor 9 Monaten bedeutet nichts.
- an 12 Fragen schon, er sollte vertraut sein mit diese. Es gibt einen "Vorschau" - box, wo er sehen kann, wie seine Frage wird kommen. Selbst der größte noob kann einfügen Zeilenumbrüche angemessen-format seinen code. Es gibt keine Notwendigkeit zum Einrücken von code 16 Zeichen tief zu machen, noch hässlich. Tut mir Leid, das ist viel zu viel Zwischenfälle. Und ich glaube nicht, dass Mädchen, die geschmacklos.
- Nur weil der compiler keine Fehler auf beiden Instanzen, bedeutet nicht, es wird nicht, wenn Sie beheben diese.
- Ich hatte mehrere Instanzen von code, bevor Sie es. @Johannes Schaub sehe ich nichts allzu schlechtes über die, wie mein code formatiert wurde. Und wen rufen Sie ein Mädchen?
- Das große problem jeder hatte wohl mit dem code war, wie sehr führende Leerzeichen vorhanden war. Hast du bemerkt: wir konnten nicht sehen, den code in die Frage ohne zu scrollen eine Menge.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ihre
(
und Ihre)
passen nicht in das große, erstethrow LangException
block.Der compiler sagt Ihnen, was falsch ist. Die
throw LangException(
nicht)
.Genau das, was es sagt. Sie vermissen ein
‘)’
vor‘;’
token auf dieser Linie.ist nicht geschlossen.