cih möchte in meiner VC++ Anwendung auf ein Array von CStrings zugreifen können. Dieses Array benötige ich in jeder Klasse und auf jedem Dialog.
Ich dachte jetzt, ich lege dieses Array einfach in ein .h File, das von allen Klassen benutzt wird. Allerdings mosert dann der Linker, dass das Array mehrfach definiert wurde.
Von einer nicht Dialogklasse wirds etwas komplizierter: Füg einfach eine Funktion in deine Nicht-Dialog-Klasse ein: z.B. Init(CDialog* pDialog). Damit hast du einen Zeiger auf die Dialogklasse. Dann ertell eine Instanz in deiner Dialogklasse (dort wo das Array ist) und schreib folgendes in OnInitialUpdate rein: m_myClass.Init(this); Du kannst das ganze auch umgehen, wenn du ein Handel auf das Dialogfenster holst
ich hab mir inzwischen ein paar Funktionen geschrieben, die auf das Array zugreifen und die Werte lesen und schreiben.
Damit kann ich das Array aus dem Header-File rausnehmen (weil ich es nur noch dort brauche, wo ich die Funktion ausprogrammiert habe) und kann statt dessen die Funktionen global deklarieren, wobei der Compiler nicht mehr rummeckert.