c 俄羅斯方塊(一) 程式設計

2021-08-28 12:53:39 字數 1071 閱讀 5436

俄羅斯方塊幾乎是 c/c++課設的經典題目了,網上一搜一大把,那我為什麼還要寫呢。

其實這個課題我早就用 c語言寫過一次了,這次用 c++重構,是想再熟悉一遍 c++的語法。

另外,我對物件導向還不是很熟練,所以藉著這次機會好好練習一下。

上面的截圖是 c語言版的效果圖,最後 c++版的效果圖可以參考上面

那麼再正式開始敲**之前我們先來分析一下程式的結構。

首先我們先想一想,乙個最簡單的俄羅斯方塊應該需要些什麼功能

第乙個肯定是乙個遊戲視窗了,沒有視窗玩啥遊戲

俄羅斯方塊總的有方塊吧

有了方塊還得能動起來啊,方塊不會動也不能玩遊戲

光能動肯定不行,方塊還得能變換

堆滿了一行需要消除

消除了一行得積分

還得顯示下乙個方塊的形狀

分析完了讓我們來看看需要一些什麼類:

俄羅斯方塊,乙個方塊類肯定少不了

最好還有個畫布類,這樣重新整理什麼的就簡單多了

只有畫布類還不行啊,重新整理時得記住當前的方塊的布局啊,所以我們再來個地圖類,消除什麼的就靠它了

那這些類應該具有什麼功能呢?

方塊類:

初始化時自動生成形狀和顏色

能夠自己下落

能監聽鍵盤變換形狀

移動時不能超出邊緣,觸底時停止移動

畫布類:

接受乙個地圖例項作文引數

可以重繪整個介面

地圖類:

可以記錄方塊落下位置

可以判斷乙個方塊例項是否觸底和碰到邊界

能夠標記每乙個座標單元的顏色

似乎忘了些什麼(⊙_⊙)?

哦,對了,我們還缺少乙個鍵盤監聽的類,用來監聽鍵盤輸入

鍵盤類:

能夠監聽鍵盤輸入

⇧ --->變換形狀

⇩ --->加速下落

⇦ --->左移

⇨ --->右移

俄羅斯方塊高階 AI俄羅斯方塊

前文回顧 致青春 python實現俄羅斯方塊 人工智慧大火的今天,如果還是自己玩俄羅斯方塊未免顯得太low,為什麼不對遊戲公升級,讓機器自己去玩俄羅斯方塊呢?有了這個想法之後利用週六週日兩天的時間去蒐集了大量的資料,在電腦宕機好多次之後終於將ai俄羅斯方塊實現了。所謂讓機器自己去玩俄羅斯方塊,就是讓...

C 俄羅斯方塊

因為要得找工作了,不得不寫些文章讓hr更多的了解到我,同時能幫到別的同學也是好的。因為接觸unity時間不是特別久,所以這裡先帖出早期開發的c 遊戲,然後再帖unity遊戲。另外提醒,我的所有作品都是自己開發的,絕無抄襲 程式 和程式設計思想絕沒超抄過別人的 最多也就是高仿別人的遊戲 貪吃蛇算嗎?俄...

俄羅斯方塊 C

include include include include includeusing namespace std define a1 0 a代表長條型,b為方塊,c為l型,d為閃電型 實在無法描述那個形狀 define a2 1 define b 2 define c11 3 define c1...