"String" Wird nicht angenommen
-
Guten Tag,
ich arbeite seit ein paar Monaten mit C#.
Nun dachte ich mir, dass ich mich mal an C++ setze, da diese Sprache ja nicht sonderlich anders ist - ich war überrascht - noch weniger Unterschiede, als ich eigentlich dachte.So,um mir den ein-/umstieg auf C++ möglichst einfach zu gestalten habe ich mich mal hingesetzt und ein paar Kapitel von Video2Brain angeguckt. - Diese habe ich auch erfolgreich "nachgebaut". - War nicht sonderlich schwierig.
Ich habe viele Dinge dazugelernt.Nun bin ich an dem Punkt, bei dem ich ein Datenobjekt mit dem Typ "string" deklarieren soll. - in C# kein Problem, aber hier...
Als ich den Code fertiggeschrieben habe, bekam ich direkt eine freudige Fehlermeldung, die wiefolgt aussah:"Error 1 error C2679: binary '<<' : no operator found which takes a right-hand operand of type 'std::string' (or there is no acceptable conversion)"
Selbstverständlich habe ich direkt die Suche benutzt. - Diese half mit aber nicht sonderlich weiter.
Ich habe also folgenden Fehler:
Das Datenobjekt, mit dem Typ String wurde nicht deklariert. - Aber warum?(Den oben genannten Fehler bekomme ich in der Zeile, bei der das Objekt ausgegeben werden soll. - Kann es aber nicht, da es in den Augen des Kompilers nicht deklariert wurde.)
Nun zu meiner Frage:
Warum "nimmt" er String nicht an?Hier der Code:
// strings1.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <iostream> using namespace std; int _tmain(int argc, _TCHAR* argv[]) { string vorname = "sebastian"; cout << "Mein Vorname ist " << vorname <<endl; return 0; }Vielen Dank für die Hilfe schonmal....

MfG
Hoamer
-
Hoamer schrieb:
Nun dachte ich mir, dass ich mich mal an C++ setze, da diese Sprache ja nicht sonderlich anders ist - ich war überrascht - noch weniger Unterschiede, als ich eigentlich dachte.
Sorry, aber so ein Schwachsinn. Bis auf die Syntax haben diese beiden Sprachen quasi gar nichts miteinander zu tun.
Zum Fehler:
#include <string>.
-
ich meine ja den Syntax

k, aber dankeschön!
-
oder einfach:
#include <iostream> int main() { std::cout << "Mein Vorname ist \"Sebastian\"!" << std::endl; }... macht afaik das selbe

-
Stimmt, da hast du recht.
Aber ein kleiner Minuspunkt ist da schon - Es muss immer ein std:: davor geschriebene werden...
Nochmals vielen Dank!
-
Ich denke er wollte darauf hinaus dass der Name direkt in der Ausgabe steht
std::cout << "Mein Vorname ist \"Sebastian\"!" << std::endl;und nicht auf den namespace
die std stehen da nur weil er eben nicht angibt dass er generell den namespace std verwendet...
sowie du mit using namespace std...