ERLEDIGT
NEIN
NEIN
ANTWORTEN
3
3
ZUGRIFFE
3026
3026
EMPFEHLEN
-
31.03.07 11:18 #1mæstrø Tutorials.de Gastzugang
Hallo,
Bin eher neu in C++ und hab folgendes Problem:
Ich will in ein Programm mehrere Dateien reinladen, eine bis einige hundert, nun will ich die Informationen zur Datei (Pfad, Name, Inhalt etc.) in einer eigenen Klasse speichern. Also für jede Datei will ich eine eigene Klasse die ich aus einer Beispiel-Klasse erstelle.
Also z.B.:
NewFile^ File1 = gcnew NewFile;
wobei NewFile die Beispiel-Klasse ist und File1 die Eigenschaften von dieser übernimmt.
nur sollte der name "File1" dynamisch erstellt werden ... d.h. wenn ich eine 2te Datei reinlade dann soll er z.B. "File" + "2" = "File2" dort hinschreiben da ich ja nicht mehrere hundert klassen im vorraus definieren kann.
oder geht das besser mit struct?
ich hoffe ich habe mich klar ausgedrückt und danke für eure antworten
Ps.: arbeite mit VC++ 2005 Express
mfg Maestro
-
Hallo,
ich würde das wie folgt bewerkstelligen...
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
#include <list> #include <iostream> class Datei { private: std::string name; std::string pfad; std::string inhalt; ... public: Datei(){} Datei(std::string name, std::string pfad, std::string inhalt); ... } class Dateiverwaltung { private: list<Datei*> dateiliste; // hier kannst du einige 100 Dateien verwalten public: .... void einfuegen(Datei*); ... }
cpp
Code :1 2 3 4
void Dateiverwaltung::einfuegen(Datei* datei) { dateiliste.push_back(datei); }
Dann machst du als Aufruf immer
Code :1 2 3
Dateiverwaltung* dv = new Dateiverwaltung(); Datei* datei = new Datei; dv->einfuegen(datei);
Dateiverwaltung aber nur einmal anlegen
MfG Turri
-
02.04.07 14:12 #3mæstrø Tutorials.de Gastzugang
Das hat mir schon mal weitergeholfen, danke
hab aber noch immer das problem das ich die pfade als string array habe und ich nicht weiß wie ich so einen pfad, bzw den dateinamen asl string aus dem pfad, in "Datei* datei = new Datei;" als "datei" verwenden kann. oder habe ich da etwas falsch verstanden?
mfg
-
Du solltest die Klasse "Datei" noch erweitern, um mindestens die Funktionen GetName, GetPfad und GetInhalt.
Code :1 2 3 4
std::string Datei::GetPfad() { return pfad; }
Code :1 2 3 4 5 6
Dateiverwaltung* dv = new Dateiverwaltung(); Datei* datei = new Datei("deinName","deinPfad","deinInhalt"); dv->einfuegen(datei); ... // wenn du den Pfad wieder nutzen willst.... std::string path = datei->GetPfad();
Solltest du noch etwas mehr erweitern... ist aber nur ein Vorschlag
MfG Turri
Ähnliche Themen
-
GUI designen oder Klassen erstellen - wie fangt ihr an?
Von dark_ghost im Forum Coders TalkAntworten: 3Letzter Beitrag: 20.09.09, 19:45 -
Struct in verschiedenen Klassen nutzen
Von Ozzy Ozborn im Forum C/C++Antworten: 1Letzter Beitrag: 12.11.07, 11:12 -
dynamische variablen in klassen
Von Tobstar28 im Forum PHPAntworten: 5Letzter Beitrag: 17.11.06, 11:20 -
PHP - Syntaxerror oder doch falscher Inhalt? Oder bin ich einfach nur doof
Von Megamorph im Forum PHPAntworten: 7Letzter Beitrag: 13.12.05, 16:55 -
Dynamische Instantiierung von Klassen möglich?
Von JaguarGorgone im Forum PHPAntworten: 2Letzter Beitrag: 14.11.05, 15:03





Zitieren
Login






