C 單例設計模式螢幕類練習

2021-08-28 19:46:19 字數 1117 閱讀 3497

題目內容:

以單例模式建立乙個螢幕screen物件。

輸入格式:

用空格分開的兩個整數,代表螢幕解析度

輸出格式:

用空格分開的兩個整數,代表螢幕解析度。隨後有換行符

輸入樣例:

800 600

輸出樣例:

800 600

具體要求:

請將如下**中的缺失部分補全:

補全screen類中的資料域成員,給出適當的資料型別

a. 代表螢幕寬和高的資料域成員

b. 儲存單例物件位址的乙個指標資料成員 instance

c. 注意資料域成員是否應該使用 static 關鍵字修飾

補充getwidth與getheight函式

補全getinstance的函式體

補充screen類的特殊資料成員初始化語句

判斷 instance 資料域成員是否指向乙個 screen 物件;

若 instance 未指向有效的 screen 物件,則設定螢幕的高和寬;

然後建立乙個 screen 物件(使用 new 運算子),將該物件位址存入 instance

**

#include #include using namespace std;

class screen ;

~screen()

public:

//----補充 getwidth() 與 getheight() 函式,

unsigned int getwidth()

unsigned int getheight()

static screen* getinstance(unsigned int width = 640, unsigned int height = 480)

return instance;

}};screen* screen::instance = 0;

//----補充screen類的特殊資料成員初始化語句

int main()

C 設計模式 單例類

本文假設有乙個manager管理類,單例類懶漢 餓漢模式的實現,和單例類的多執行緒安全性,最後介紹meyers singleton寫法。當第一次要用單例類的時候,再產生例項。是一種典型的拖延 lazy 策略。類宣告 class manager 類定義 單例物件指標初始化為nullptr,防止指向了未...

單例設計模式的練習

單例設計模式 有關的知識點 class a object def init self print 這是 init 方法 def new cls print 這是 new 方法 return object.new cls 返回的是乙個例項了的物件 就是self new 至少要有乙個引數cls,代表要例...

單例設計模式程式設計練習

單例設計模式 是指在程式的執行過程中,只有乙個例項的存在。同乙個類的若干物件需要訪問同乙個資料,這個資料儲存在靜態變數中 如果不同的類的若干物件訪問同乙個資料,其中乙個解決方案就是單例。把構造方法私有化 在類中提供乙個私有的靜態的本類的物件 提供乙個公共的靜態的方法,返回這個物件 singleton...