Bär mit mir hier, wie ich komme aus einem reinen Java/Python-Hintergrund und haben etwa 10% Kenntnisse in Grundlagen von C++.Empfangen "erwartete unqualifizierte-id" beim Erstellen einer Funktion
Ich Definition einer tokenising Klasse für einen Lexer und haben bereits in ein Problem laufen, mit dem Eclipse-Compiler Werfen:
erwartet unqualifizierte-ID
Thats it. Keine Information überhaupt. Derselbe Fehler taucht auf, egal was ich meine Funktion nenne. Ich denke, es kann mit der Art und Weise zu tun, habe ich vector<string> tokenise
bin mit, aber ich habe keine Ahnung, ...
ich mein Setup h
und cpp
Datei wie folgt:
lexer.h
#ifndef LEX_LEXER_H_
#define LEX_LEXER_H_
#include <string>
#include <vector>
using namespace std;
struct token;
vector<token> tokenise(vector<string> data);
#endif /* LEX_LEXER_H_ */
lexer.cpp
#include <iostream>
using namespace std;
enum token_type {
// Operations.
ADD, SUB, MUL, DIV, MOD,
// Bitwise operations.
BITL, BITR,
// Keywords.
DEFINE,
// Primitives.
INT, FLOAT, CHAR, STRING, BOOL
};
struct token {
token_type type;
string data;
};
vector<token> tokenise(vector<string> data) { // <<< throwing the error
vector<token> tokens;
for (string s : data) {
for (char& c : s) {
cout << c << endl;
}
}
return tokens;
}
einbinden Tipp: Verschmutzen Sie nicht Ihren globalen Namespace mit 'using namespace std;' in einer Header-Datei –
@PiotrSkotnicki Danke für den Tipp! Darf ich fragen, warum ** nicht **? – finnrayment
http://Stackoverflow.com/q/1452721/3953764 –