Ich erstellte ein C++ - Projekt, das mehrere Quelldateien und Header-Dateien enthält. Das Programm kompiliert und läuft gut in Codeblöcken, aber ich kann es nicht im Terminal kompilieren.C++ - Programm kompiliert und läuft in Codeblöcken, kann aber nicht im Terminal kompilieren
Alle Dateien befinden sich im selben Ordner.
sind hier der Befehl I ein:
clang++ -std=c++11 main.cpp file1.cpp file1.h
Es zeigt:
clang: warning: treating 'c-header' input as 'c++-header' when in C++ mode, this behavior is deprecated
Und ein Schlag von Fehlern zu:
error: use of undeclared identifier 'std'
In der Kopfdatei.
Für den Fall, dass Sie sich fragen, wenn Sie irgendwo einen Header einfügen, hat er Zugriff auf das, was in der Quelldatei enthalten ist. Wenn Sie versuchen, es zu kompilieren, verhält es sich jedoch wie ein Quellcode und erwartet, dass diese Dinge explizit enthalten sind. –
Long-Story-Kurz: Versuchen Sie nicht, Header zu kompilieren, wie bereits beantwortet wurde. –