QT中資料庫單例類的封裝

2021-09-28 22:46:40 字數 849 閱讀 4261

首先咱們理解一下什麼是單例模式

單例模式,屬於建立型別的一種常用的軟體設計模式。通過單例模式的方法建立的類在當前程序中只有乙個例項(根據需要,也有可能乙個執行緒中屬於單例,如:僅執行緒上下文內使用同乙個例項)

簡單來說:

1.確保乙個類只能建立乙個例項

2.能夠提供乙個訪問類物件的全域性指標

為滿足以上條件,需要做的事情很簡單:第一步,將建構函式設定為私有,不讓在其它地方可以建立例項;第二步,建立乙個公有靜態函式介面,在介面中建立類的例項並返回;這樣一來,在其它類裡面要呼叫單例類的函式的話,就可以通過呼叫靜態函式拿到類的示例然後再呼叫類的其它公有函式。

標頭檔案

//單例類:只有乙個例項

class fishsql

;

cpp檔案

//靜態成員的初始化,一定不能少

fishsql* fishsql::sqlins = null;

qsqldatabase fishsql::db;

fishsql::fishsql(qstring &filename)

//靜態函式介面,返回類的例項

fishsql* fishsql::instance(qstring filename)

//建表

void fishsql::createtable(qstring &sql)

else

}//向表中插入資料

void fishsql::inserttable(qstring tablename, qstring username, qstring pwd)

else

}

單例 封裝PHP 資料庫連線

class mysqldb 連線資料庫 private function connect this user,this pwd or die 資料庫連線失敗 設定字元編碼 private function setcharset this query sql 選擇資料庫 private functio...

php單例模式連線資料庫封裝類

單例模式有三大原則 建構函式不能為public 有乙個儲存例項的靜態成員變數 擁有訪問這個例項的公共靜態方法 基於單例模式的php資料庫連線類 class db static public function getinstance return self instance public functi...

php單例模式連線資料庫封裝類

單例模式有三大原則 建構函式不能為public 有乙個儲存例項的靜態成員變數 擁有訪問這個例項的公共靜態方法 基於單例模式的php資料庫連線類 php view plain copy class db static public function getinstance return self in...