歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

C++單例模式在Qt編程中的使用

使用單例模式的優點就是可以全局共享一些參數或者對象,而且降低的類與類之間耦合性。比如有一個參數在不同的類中都要使用到,這時用單例是很方便的。

頭文件如下signlepara.h

  1. #ifndef SINGLEPARA_H   
  2. #define SINGLEPARA_H   
  3.   
  4. #include <QtGui>   
  5. class SinglePara  
  6. {  
  7. public:  
  8.     int single; //共享的變量   
  9.     static SinglePara* getSinglePara();  
  10. private:  
  11.     SinglePara();  
  12.     static SinglePara *single;  
  13. };  
  14.   
  15. #endif // SINGLEPARA_H  

源文件如下singlepara.cpp

  1. #include "singlepara.h"   
  2. SinglePara *SinglePara::single = 0;  
  3. SinglePara::SinglePara()  
  4. {  
  5. }  
  1. //用來返回單例類的對象   
  2. SinglePara* SinglePara::getSinglePara()  
  3. {  
  4.     if(single == 0)  
  5.     {  
  6.         single = new SinglePara();  
  7.     }  
  8.     return single;  
  9. }  

這樣的在不同的類之中要使用single這個參數只要

  1. SinglePara *sin = SinglePara::getSinglePara();  
  2. qDebug()<<sin->single;  
Copyright © Linux教程網 All Rights Reserved