Zugriff auf Objekte von ueberall her

Alles rund um die Programmierung mit Qt
Antworten
C167
Beiträge: 105
Registriert: 9. Februar 2008 20:30

Zugriff auf Objekte von ueberall her

Beitrag von C167 »

Tagchen,
ich hab mir gerade ein paar Gedanken gemacht, wie man es erreichen koennte, dass man wie mit

Code: Alles auswählen

QSqlDatabase::database()
oder der QSettings-Klasse an jeder beliebigen Stelle im Code Zugriff auf ein Objekt erhaellt. Bei QSqlDatabase bekommt man ja ueber die statische "::database(QString)"-Methode ein Datenbankobjekt zurueckgeliefert, das anderswo erstellt wurde, selbst wenn sich die Klasse die das Objekt erstmalig erstellt und die es spaeter benutzt nicht kennen.
Gerade bei Klassen, die mit der Konfiguration zu tun haben ist es ja sinnvoll, ein gemeinsames Objekt ueberall nutzen zu koennen.

Nun die vielleicht wichtigste Frage dazu: Wo wird denn das Objekt, dass dann zurueckgeliefert wird, gespeichert? Und wie erhalten statische Methoden bzw. die Konstruktoren der Klasse (QSettings) Zugriff darauf?
C167
keeney
Beiträge: 9
Registriert: 14. September 2007 01:56
Wohnort: Regensburg
Kontaktdaten:

Beitrag von keeney »

C167
Beiträge: 105
Registriert: 9. Februar 2008 20:30

Beitrag von C167 »

vielen Dank, genau das suche ich!

Ich werde in den naechsten Wochen anfangen, sowas mal zu implementieren :) Mit ein wenig Glueck reicht mein Verstaendniss von C++ und Qt mittlerweile aus, um bissel in den Qt-sourcen abzugucken :)
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

keeney hat geschrieben:Schau dir mal http://de.wikipedia.org/wiki/Singleton_ ... smuster%29 an
Wobei das im Fall von QSqlDatabase einfach nur eine statische Methode ist. Googeln nach static hilft sicherlich weiter :)
C167
Beiträge: 105
Registriert: 9. Februar 2008 20:30

Beitrag von C167 »

franzf hat geschrieben:Wobei das im Fall von QSqlDatabase einfach nur eine statische Methode ist. Googeln nach static hilft sicherlich weiter :)
Ja, wie es ja ueberall beschrieben wird. nur intern wird da auch ein bissel was gearbeitet. das mit der QSqlDatabase war auch nur ein Beispiel, war das erste was mit eingefallen ist weil ich es relativ haeufig brauche

eine interessante Beschreibung ist z.B. http://www.codeguru.com/cpp/cpp/cpp_mfc ... 9__2/#more

Ich programmier erstmal mein aktuelles Projekt zu ende, dann Pinge ich hier oder im c-plusplus.de forum vorbei (is ja nicht unbedingt Qt speziefisch) um da was zum laufen zu bringen :)
Antworten