[C++] Adressbuch - Brauche hilfe - Quellcode ist im thread dabei (zum lernen)
Hey ich hab die Aufgabe bekommen ein Adressbuch Programm zu machen.
Es soll Infos über die Person(en) abfragen. Diese können auch gelöscht oder geändert werden. Außerdem soll man die Einträge speichern und laden können. Hier ist das Problem. Speichern funktioniert. Es erstellt eine Textdatei und schreibt die Daten untereinander. Beim laden hab ich jedoch probleme mit dem übergeben der Werte aus der Funktion als Pointer.
Außerdem sollte ich es so machen, dass man sich selber einen Dateinamen aussuchen kann. Das funktioniert auch nicht ganz, hab deshalb als Name "test.txt" festgelegt.
Wer sich auskennt, Zeit hat und mir helfen will: Die "laden" Funktion ist die die verbessert werden muss. Die speichern Funktion ist auch direkt darunter.
Ich weiss nicht, ob es dir freigestellt ist, wie du diese Aufgabe bearbeitest, aber wenn dem so ist, dann nimm' doch einfach einen vector<eintrag> liste und arbeite mit typisierten Dateien, dann bleibt nur noch 10% von deinem bisherigen Code übrig ;)
MfG
09.09.2009, 00:21
eRaSeR!
könntest das pls etwas erklären oder mir ein beispiel geben? noch nie was von vector gehört (außer in mathe^^)
09.09.2009, 00:25
blackberry
#include <vector>
Vector = dynamischer Array
09.09.2009, 00:43
eRaSeR!
^^ok ty. ich gucks mir ma an aber pls back2topic (meine laden funktion. die werte richtig übergeben oder was auch immer da nicht geht)
ein cout innerhalb der funktion laden mit liste[0].blablaaa geht übrigends
die datei test.txt hat bei mir daten von 2 "personen"
09.09.2009, 00:57
inout
Also um den Dateinamen noch zu übergeben, brauchst du lediglich einen weiteren string-Parameter, den du dann nur bei der Übergabe an den ifstream-Konstruktor wieder zu einem C-String casten musst. Dafür gibt es die Methode c_str().
Das while(!datei.eof()) kannst du dir auch sparen und stattdessen einfach das getline(datei, zeile) in den Schleifenkopf schreiben.
Aber wie gesagt, für sowas eignen sich typisierte Dateien viel besser. Dann müsstest du allerdings auf die strings im struct verzichten...
09.09.2009, 01:02
eRaSeR!
ok ty. genau des problem hatte ich mit dem umwandeln oder was auch immer. der hat des nich akzeptiert. ich teste des dann aber erst morgen^^ grad TVen, bier, chillen...^^