Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Singleton fuer Dateizugriff?

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
14.05.2005, 14:04 Uhr
~ernst
Gast


Hallo!

Ich moechte in einer Anwendung verschiedenen Klassen den Zugriff auf eine Datendatei ermoeglichen. Dazu wuerde ich gerne das Singleton-Pattern einsetzen.
Leider habe ich damit (in C++) keinerlei Erfahrung und weiss nun nicht, wie ich den Zugriff auf die Datei in der Singleton-Klassen kapseln soll.

Bisher habe ich das (quasi ein "Standard-Singleton"):


C++:
class Daten
{
    public:
        static Daten* instance();

    protected:
        Daten() {}

    private:
        /// Kopierkonstruktor privat deklarieren, damit nicht automatisch
        /// einer erstellt wird und Objekt nicht kopiert werden kann.
        Daten (const Daten&);
        static Daten* uniqueInstance;
};

Daten* Daten::uniqueInstance = 0;

Daten* Daten::instance (void)
{
    if (uniqueInstance == 0)
        uniqueInstance = new Daten();

    return uniqueInstance;
}



Jetzt muss ich ja nur noch irgendwie in der Daten-Klasse z.B. ein ifstream-Objekt erstellen und die Datei oeffnen, damit ich global daruf zugreifen kann, richtig? Wie koennte man das am geschicktesten machen?

Danke fuer Hinweise!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
14.05.2005, 16:02 Uhr
0xdeadbeef
Gott
(Operator)


Eigentlich ist die typische singleton-pattern in C++ eher

C++:
class singleton {
public:
  inline static singleton &instance() {
    static singleton me;
    return me;
  }

private:
  singleton() { }
};


--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra

Dieser Post wurde am 14.05.2005 um 16:03 Uhr von 0xdeadbeef editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: