errors
-
Was steht denn direkt davor?
-
schreib es einfach in C#
-
Erstens: Du mußt den Header eingebunden haben, BEVOR du etwas verwenden kannst, was dort drin definiert ist. (der Compiler arbeitet von oben nach unten, d.h. wenn er erst nach diesen Funktionen die Definition von std::string findet, ist es bereits zu spät)
Zweitens: Schau dir eventuell mal die Methode string::substr() an, die könnte besser geeignet sein als dein Ansatz (btw, in der erase_first_last hast du dich leicht verzählt ;)).
-
tobZel schrieb:
ich hab string drin so:
#include <string>ich kann mir diese errors auch nicht erklären oO.
mfg tobZel
Du hast mir meine erste Frage noch nicht beantwortet:
Simon2 schrieb:
...
Hast Du dann hier die Zeilennummern gepatcht ?tobZel schrieb:
C:\Programme\DevStudio\MyProjects\tscontrol\functions.cpp(1) : error C2239: Unerwartetes Token 'identifier' nach der Deklaration von 'string' C:\Programme\DevStudio\MyProjects\tscontrol\functions.cpp(1) : error C2061: Syntaxfehler : Bezeichner 'erase_first_last' C:\Programme\DevStudio\MyProjects\tscontrol\functions.cpp(4) : error C2501: 'text' : Fehlende Deklaration C:\Programme\DevStudio\MyProjects\tscontrol\functions.cpp(4) : error C2239: Unerwartetes Token '.' nach der Deklaration von 'text' C:\Programme\DevStudio\MyProjects\tscontrol\functions.cpp(4) : error C2059: Syntaxfehler : '.' C:\Programme\DevStudio\MyProjects\tscontrol\functions.cpp(5) : error C2143: Syntaxfehler : Fehlendes ';' vor '}'...
Wichtig weil: Wenn die die originalen Compilerfehlermeldungen sind, KANNST Du string gar nicht inkludiert haben, weil in der ersten Zeile bereits
std::string erase_first_last(std::string text)steht ... davor kann also kein #include <string> stehen !

Gruß,
Simon2.
-
@CStoll
thx für den HinweisIch habs so gemacht:
ich hab 2 dateien
- main.cpp
- functions.cppmain.cpp
#pragma comment( lib, "ws2_32.lib" ) #include <iostream> #include <stdlib.h> #include <string> #include <vector> #include <windows.h> #include "defs.h" #include "functions.cpp" //hier main funktionund das in functions.cpp steht oben das ist alles in einem projekt und kompilieren tu ich main.cpp
@Simon2
das beantwortet jetzt wohl auch deine andere Fragemfg tobZel
-
Bei einem #include "xxx.cpp" sollten aber sofort alle Alarmglocken läuten. (auf gut Deutsch: .CPPs solltest du besser nicht includen - die gibst du dem Compiler direkt mit).
-
tobZel schrieb:
...
@Simon2
das beantwortet jetzt wohl auch deine andere Fragemfg tobZel
Japp - danke !
Was steht denn in defs.h ? fehlt da in der letzten Zeile evtl. ein ";" ?
Gruß,
Simon2.
-
In "defs.h" ist das drinn:
struct SUser { int pID; int cID; int ps; int bs; int pr; int br; int pl; int ping; int logintime; int idletime; int cprivs; int pprivs; int pflags; std::string ip; std::string nick; std::string loginname; }Drum wurdets mich auch das er dort bei std::string nicht motzt
@CStoll
Was ist daran schlimm? Ich lager den code der funktionen nur in eine andere datei aus.mfg tobZel
-
tobZel schrieb:
In "defs.h" ist das drinn:
struct SUser { int pID; int cID; int ps; int bs; int pr; int br; int pl; int ping; int logintime; int idletime; int cprivs; int pprivs; int pflags; std::string ip; std::string nick; std::string loginname; }Drum wurdets mich auch das er dort bei std::string nicht motzt
@CStoll
Was ist daran schlimm? Ich lager den code der funktionen nur in eine andere datei aus.mfg tobZel
Wusst ich's doch:
Simon2 schrieb:
...fehlt da in der letzten Zeile evtl. ein ";" ?...
-> Ja !

Gruß,
Simon2.
-
tobZel schrieb:
Was ist daran schlimm? Ich lager den code der funktionen nur in eine andere datei aus.
Schlimm wird es nur, wenn der Compiler das anders sieht als du. Und gerade wenn du eine IDE hast, schickt die üblicherweise alle CPP's aus deinem Projekt an den Compiler - und schon streikt der Linker.
(ich weiß nicht, womit du arbeitest, also gehe ich üblicherweise vom worst case aus)
-
@Simon2
thx es funkt jetzt!@CStoll
Mein Compiler scheint damit keine Probleme zu haben.
Trotzdem danke für den Hinweis.mfg tobZel