Sorry,

maybe I am too stupid, but your code doesn't work for me. I take your code and just changed the name of the class:
Qt Code:
  1. #ifndef CONFIGURATION_H
  2. #define CONFIGURATION_H
  3.  
  4. #include <QtCore>
  5. #include <QtSql>
  6.  
  7. class configuration
  8. {
  9. public:
  10. static configuration* instance()
  11. {
  12. static QMutex mutex;
  13. if ( !m_instance )
  14. {
  15. mutex.lock();
  16. if ( !m_instance )
  17. m_instance = new configuration;
  18. mutex.unlock();
  19. }
  20. return m_instance;
  21. }
  22.  
  23. private:
  24. configuration(){};
  25. configuration( const configuration& _instance ){};
  26. static configuration* m_instance;
  27.  
  28. // [...] some other functions
  29.  
  30. };
  31.  
  32. configuration* configuration::m_instance = NULL;
  33.  
  34. #endif
To copy to clipboard, switch view to plain text mode 

When compiling I receive the error (which I don't understand == don't know what to do/where the error could be):
.comp/sw_normal.o: In function `operator delete(void*, void*)':
/usr/include/qt4/QtCore/qatomic_i386.h:62: multiple definition of `configuration::m_instance'
.comp/qvortaro.o:/home/lykurg/Programmierung/qvortaro/src/qvortaro.cpp:194: first defined here
collect2: ld returned 1 exit status


And by the way must it in your example in the wiki not be
Qt Code:
  1. Singleton* Singleton::m_Instance = 0;
To copy to clipboard, switch view to plain text mode 
instead of
Qt Code:
  1. Singleton* m_Instance = 0;
To copy to clipboard, switch view to plain text mode 



Thanks,
Lykurg

P.s: if I comment the function (on bottom of the file) in qvortaro.cpp:194 out, then this error pointed to now last function on the file.