Guntpat1981
Mitglied
Hallo Zusammen,
ich habe zwei Probleme und wollte fragen, ob mir da eventuell jemand helfen kann.
Ich habe folgende Klassenstruktur:
class Team {
friend ostream & operator<<(ostream & output, Team & one_team);
public:
Team();
~Team();
//...weitere Funktionen
private:
char Name[25];
// 6 int-Variablen, die das Team näher beschreiben
};
1. Problem:
Ich möchte (wie oben angegeben) den ostream (also quasi "cout") überladen, um mit einem Befehl alle Angaben eines Objektes der Klasse Team ausgeben zu können. Ich habe, wie es üblich ist, die Operator-Funktion friend deklariert, um in Ihrer Implementierung direkten Zugriff auf die privaten Elemente der Klasse Team zu haben. Leider funktioniert dies trotz meiner Implementierung nicht. Kann mir jemand sagen, woran das liegen kann?
2. Problem:
Ich möchte von einer vorhandenen Binaerdatei Daten in meine Variablen von Objekten der Klasse Team einlesen. Ich habe einen Vector, der mehrere Objekte der Klasse Team verwaltet - ich habe mir gedacht, die gesamte Klassenstruktur folgendermaßen einzulesen:
ifstream inFile("filename.dat", ios::binary);
//...
Team mannschaft; //anlegen eines Objektes der Klasse
inFile.read(reinterpret_cast<char*>(&mannschaft), sizeof(Team));
//...
Wenn ich diesen Befehl verwende, verschiebt sich meine ganze Strukur jeweils um 4 Bytes - ich glaube, dass das etwas mit dem Attribut Name zu tun hat, welches char-array ist. Ich muss allerdings dieses char-array laut Aufgabenstellung als string - objekt verwenden.
Vielleicht weiß ja jemand von Euch Rat, wäre sehr dankbar.
ich habe zwei Probleme und wollte fragen, ob mir da eventuell jemand helfen kann.
Ich habe folgende Klassenstruktur:
class Team {
friend ostream & operator<<(ostream & output, Team & one_team);
public:
Team();
~Team();
//...weitere Funktionen
private:
char Name[25];
// 6 int-Variablen, die das Team näher beschreiben
};
1. Problem:
Ich möchte (wie oben angegeben) den ostream (also quasi "cout") überladen, um mit einem Befehl alle Angaben eines Objektes der Klasse Team ausgeben zu können. Ich habe, wie es üblich ist, die Operator-Funktion friend deklariert, um in Ihrer Implementierung direkten Zugriff auf die privaten Elemente der Klasse Team zu haben. Leider funktioniert dies trotz meiner Implementierung nicht. Kann mir jemand sagen, woran das liegen kann?
2. Problem:
Ich möchte von einer vorhandenen Binaerdatei Daten in meine Variablen von Objekten der Klasse Team einlesen. Ich habe einen Vector, der mehrere Objekte der Klasse Team verwaltet - ich habe mir gedacht, die gesamte Klassenstruktur folgendermaßen einzulesen:
ifstream inFile("filename.dat", ios::binary);
//...
Team mannschaft; //anlegen eines Objektes der Klasse
inFile.read(reinterpret_cast<char*>(&mannschaft), sizeof(Team));
//...
Wenn ich diesen Befehl verwende, verschiebt sich meine ganze Strukur jeweils um 4 Bytes - ich glaube, dass das etwas mit dem Attribut Name zu tun hat, welches char-array ist. Ich muss allerdings dieses char-array laut Aufgabenstellung als string - objekt verwenden.
Vielleicht weiß ja jemand von Euch Rat, wäre sehr dankbar.