1 課程設(shè)計的內(nèi)容和目標(biāo)
使用 C++語言和微軟的 MFC 類庫,設(shè)計并實現(xiàn)一個帶有 GUI 界面的飛機游戲。游戲包含玩家飛機、敵機、子彈等元素,游戲者可以操縱玩家飛機移動,通過發(fā)射子彈擊毀敵機。
1.1 游戲設(shè)計
玩家可以使用方向鍵(或 ADWS 鍵)控制飛機移動,按空格鍵發(fā)射子彈。玩家通過發(fā)射子彈擊中敵機來獲得分?jǐn)?shù)。每隔一段時間,會有一架新的敵機出現(xiàn)。敵機一共有三種類型,每種類型的敵機的血量不同:第一種敵機(普通敵機)只需一枚子彈即可擊毀,第二種(中級敵機)需要兩枚,而第三種(Boss 敵機)需要 10 枚子彈才可擊毀。每類敵機出現(xiàn)的頻率不同,第一類出現(xiàn)的頻率最高,第二類其次,而血量最大的第三類敵機出現(xiàn)的頻率最低。玩家在游戲時需要躲避敵機,當(dāng)任意一架敵機與玩家飛機發(fā)生碰撞后,則游戲結(jié)束。
1.2 課程設(shè)計目標(biāo)
綜合運用本學(xué)期高級程序課程中學(xué)到知識:
面向?qū)ο蟪绦蛟O(shè)計,數(shù)據(jù)抽象和封裝(類/對象),繼承(基類與派生類、子類型)以及消息的多態(tài)和動態(tài)綁定(虛函數(shù))
泛型(類屬)程序設(shè)計,基于 STL(標(biāo)準(zhǔn)模板庫)容器、迭代器和算法的編程等
事件(消息)驅(qū)動程序設(shè)計,包括:消息、消息循環(huán)以及消息處理過程等
基于“文檔-視”結(jié)構(gòu)的應(yīng)用框架的程序設(shè)計,包括:文檔-視應(yīng)用框架,MFC 類庫,windows 應(yīng)用程序設(shè)計等
設(shè)計良好的類層次結(jié)構(gòu),盡量使代碼易讀,易維護
2 開發(fā)環(huán)境
編程語言:C++(C++11)
IDE: Visual Studio 2015
框架:MFC
OS: Windows
3 類層次關(guān)系和實現(xiàn)
類層次結(jié)構(gòu)設(shè)計是面向?qū)ο蟪绦蛟O(shè)計的最重要部分。本程序的類層次關(guān)系如下圖所示:

參考文檔和完整的文檔和源碼下載地址: