Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Werbeanzeige
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
#ifndef SINGLETON_H #define SINGLETON_H template <class T> class TSingleton { public: TSingleton(); T *Get(void); void Del(void); protected: static *m_pSingleton; }; #endif |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
#include "Singleton.h" TSingleton::TSingleton() { m_pSingleton=NULL; } T *TSingleton::Get(void) { if(!m_pSingleton) m_pSingleton=new T; return m_pSingleton; } void TSingleton::Del(void) { if(m_pSingleton) delete m_pSingleton; m_pSingleton=NULL; } |
C-/C++-Quelltext |
|
1 2 |
delete m_pSingleton; m_pSingleton=NULL; |
Zitat von »"C--"«
@drakon: Der Unterschied ist scheinbar, dass die Kommentare fehlen. :roll:
Zitat von »"drakon"«
Zitat von »"C--"«
@drakon: Der Unterschied ist scheinbar, dass die Kommentare fehlen. :roll:
Jo. Abgesehen davon ein inline,virtual, 2 static und die Definition der statischen Variable..
C-/C++-Quelltext |
|
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 28 29 30 31 32 |
#include <iostream> using namespace std; int main() { int Version = 0; //Versionsnummer try { //Versionsnummer aus Datei auslesen. Wert wird manuell ersetzt Version = 1; if (Version < 3) throw "Format veraltet, kann nicht gelesen werden"; if (Version > 3) throw "Unbekanntes Format!"; } //Catch Block kommt nach Throw catch (char *Fehler) { //Fehler ausgeben cout <<"Ausnahme aufgetreten: "<<Fehler<<endl; //Programm sicher herunterfahren cout <<"Speicher wird freigegeben und das Programm beendet"<<endl; } return 0; } |
Werbeanzeige