000
10.06.2004, 16:48 Uhr
~Bastler
Gast
|
Hi Leute!
Bin bei der Suche nach einer Antwort auf mein Problem im Netz auf dieses Board gestossen.
Vielleicht könnt Ihr mir ja weiterhelfen. Bin kein Crack, also wenn machbar eventuelle Antworten ein bischen ausführlicher gestalten. Vorab vielen Dank, der Bastler
Jetzt zum Problem: Ich möchte in meinem Programm mehrere Adressen abspeichern. Habe mir zu diesem Zweck, um nicht unnötigerweise Speicherplatz zu vergeuden, eine doppelt verkette Liste generiert. Diese Liste wird durch zwei Klassen, die miteinander arbeiten, gemanaged.
Ich brauche also nur noch hergehen und z.B. folgendes initialisieren: .... LinkedList Adresse; Adresse.SetNewElement(Name, Strasse); //Name und Strasse vom Typ CString .... (habe somit also die verkette Liste erzeugt und ein Element in ihr abgelegt)
Ich habe das ganze Gereppel zunächst als Win32-Konsolenanwendung programmiert und getestet. Klappte auch alles wie gewünscht. Jetzt zum eigentlichen Problem.
Die beiden Klassen sollen jetzt in ein Visual C++ - Projekt eingebunden werden und dort in einem Programm mit GUI ihren Dienst versehen. Das Hineinkopieren (ich verzichte hier mal bewusst auf das Wort Einbinden) scheint wohl zu funktionieren. Meine 2 Header- und 2 cpp-Dateien werden im Projekt angezeigt. In der "Hauptdatei" (die Datei, in der die Zeile CAdresseApp theApp; zu finden ist) konnte ich dann auch problemlos ein Objekt der Liste erzeugen (siehe Code oben). Wenn ich dann aber in einem anderen Fenster (und damit verbunden in einer anderen C++-Datei in diesem Projekt) wieder auf das Adresse-Objekt zugreifen will, dann mault der Compiler, dass Adresse ein nicht deklarierter Bezeichner sei. Und das, obwohl ich im Kopf dieser Datei per INCLUDE die Datei "LinkedList.h" für die verkette Liste bekannt gemacht habe.
Abschliessend nochmal zum besseren Verständnis, was ich vor habe: Ich möchte bei Programmstart einmal ein Objekt der verketten Liste erzeugen und später im Programm von mehreren Fenstern aus darauf zugreifen (z.B. neue Adresse ablegen, löschen, ändern,.....)
Wäre wirklich super, wenn mir da jemand weiterhelfen könnte, eventuell gehe ich ja auch von falschen Vorstellungen aus.
Nochmals besten Dank, Ciao und Tschüss, der Bastler |