Anfängerproblem, Ausgabe von String aus Strukturen
-
Hi,
ich möchte Strings, die ich vorher in eine Strukur eingelesen habe, wieder auslesen. Leider wird andauernd die Fehlermeldung
Binaerer Operator '<<' : Kein Operator definiert, der einen rechtsseitigen Operator vom Typ 'class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char>
' akzeptiert (oder keine geeignete Konvertierung moeglich)
ausgeworfen. Ich kann damit nichts anfangen.
Danke
mfg
Alex
---------
#include <iostream>
using namespace std;
struct Datum{
int t;
int m;
int j;
};struct KirchenDaten{
Datum gebTag;
Datum todTag;
Datum hochTag;
};typedef string Text;
struct Person{
Text namen[3];
KirchenDaten *pkirch;
int plz;
Text ort;
};int main(){
cout << "hallo123" << endl;
//Anlegen von er -- wie Zugriff auf die Daten ???
Person er;
er.namen, "hans", "otti", "semel" ; //krass Komma
Datum daten= {12,12,1978};
er.pkirch, &daten;cout << "ok. er eingelesen " << endl;
cout << er.namen[0] << endl;
//Anlegen von psie -- wie Zugriff auf die Daten ???
Person sie;
Person *psie;
psie= &sie;
psie->namen[0]= "Marie";
psie->namen[1]= "Luise";
psie->namen[2]= "von Schnattendorf";string vorname= psie->namen[0];
string test= "hallo123" ;
//cout << "Name von psie " << psie->namen[0] << " " << psie->namen[1] << " " << psie->namen[2] << endl;
//cout << "" << vorname << endl;
cout << vorname << endl;//cout << "" << test << endl;
//Ausgabe des Geburtsmonats von er
//Ausgabe aller Namen von psie
//Ausgabe des Vornamen von psie mit der Funktion ErmVorname
return 0;
}
-------

-
Erstens würde ich da auch noch ein "#include <string>" erwarten.
Zweitens, warum setzt du dort einen typedef für string ein?
Und drittens: Der Code:er.namen, "hans", "otti", "semel" ; //krass Kommasieht zwar "krass" aus, macht aber effektiv gar nichts.
-
Ja das mit dem Krass. Ich find es halt etwas kryptisch. Das Komma fällt nicht sofort ins Auge (denke gewohnheitssache) und von C und Java war ich es gewohnt direkt mit Zuweisungen (= ) zu arbeiten.
Text statt String ist ne Sache von userem Lehrmeister. Ich denke die Synonymanwendung von typedef soll geübt werden.
Ja, ja die string Bibliothek. Ich hatte damit nicht gerechnet. Danke
