freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

vb俄羅斯方塊游戲程序設(shè)計(jì)論文(編輯修改稿)

2024-12-12 09:17 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 木大學(xué)信息工程學(xué)院課程設(shè)計(jì) 第 6 頁(yè) 用戶(hù)界面具體如圖: 圖 — 登陸界面 圖 — 游戲界面 圖 — 菜單編輯界面 圖 — 游戲幫助界面 有關(guān)說(shuō) 明 經(jīng)過(guò)兩個(gè)多星期的設(shè)計(jì)和開(kāi)發(fā),俄羅斯方塊游戲 已經(jīng)成功 。其功能基本符合用戶(hù)需求,能夠完成游戲的控制,方塊的變換以及消層等功能。并提供游戲設(shè)置,對(duì)于一些技術(shù)性比較過(guò)硬的玩家,可以調(diào)游戲級(jí)別、以及游戲速度,使得玩家能夠充分的發(fā)揮競(jìng)技游戲的特色,可以不斷的挑戰(zhàn)自我,挑戰(zhàn)極限。 游戲設(shè)計(jì)中的不足之處 但是由于課程設(shè)計(jì)時(shí)間較短,所以該游戲還有許多不盡如人意的地方,比如方塊類(lèi) 型太少,退出游戲不能存儲(chǔ)進(jìn)度等多方面問(wèn)題。這些都有待進(jìn)一步改善,我們?cè)谟螒蛑羞€可以更換背景音樂(lè),以適合不同的玩家,在每通過(guò)一關(guān)可以給玩家播放 一段 flash,吸引玩家去挑戰(zhàn)極限,不斷提高玩家的興趣,相信在以后的制作過(guò)程中我們將給大家?guī)?lái)一個(gè)更新功能更塔里木大學(xué)信息工程學(xué)院課程設(shè)計(jì) 第 7 頁(yè) 全面的游戲。 VB 與 C 語(yǔ)言之間的不同之處 我們這個(gè)小游戲也可以用 C語(yǔ)言來(lái)實(shí)現(xiàn),在程序的編程上沒(méi)有 VB 語(yǔ)言方便實(shí)用, C語(yǔ)言和 VB語(yǔ)言之間存在很多的 共同點(diǎn) , 雖然 語(yǔ)法方面有點(diǎn)差異,但是在編程思路上完全一樣,VB能夠?qū)崿F(xiàn)很多 C不能做到的功能,如 When語(yǔ)句、 Optional參數(shù)、局部 Static變量、對(duì)象實(shí)例訪(fǎng)問(wèn)靜態(tài)方法、 Handles綁定事件、 On Error處理異常、 Object直接后期綁定等等 。VB和 C語(yǔ)言,編譯出來(lái)的是同樣的 CIL,但為什么 VB支持很多有趣的特性呢。我們一起來(lái)探究一下。 VB支持用 Static關(guān)鍵字聲明局部變量,這樣在過(guò)程結(jié)束的時(shí)候可以保持變量的數(shù)值: Public Sub Test1() Static i As Integer i += 1 39。實(shí)現(xiàn)一個(gè)過(guò)程調(diào)用計(jì)數(shù)器 End Sub 我們實(shí)現(xiàn)了一個(gè)簡(jiǎn)單的過(guò)程計(jì)數(shù)器。每調(diào)用一次 Test,計(jì)數(shù)器的數(shù)值就增加 1。其實(shí)還有很多情況我們希望保持變量的數(shù)值。而 C的 static是不能用在過(guò)程內(nèi)部的。因此要 實(shí)現(xiàn)過(guò)程計(jì)數(shù)器,我們必須聲明一個(gè)類(lèi)級(jí)別的變量。這樣做明顯不如 VB好。因?yàn)闊o(wú)法防止其他過(guò)程修改計(jì)數(shù)器變量。這就和對(duì)象封裝一個(gè)道理,本來(lái)應(yīng)該是一個(gè)方法的局部變量,現(xiàn)在我要被迫把它獨(dú)立出來(lái),顯然是不好的設(shè)計(jì)。那么 VB 是怎么生成局部靜態(tài)變量的呢?將上述代碼返匯編,我們可以清楚地看到在 VB生成的 CIL中, i不是作為局部變量,而是作為類(lèi)的 Field出現(xiàn)的: .field private specialname int32 $STATIC$Test1$2020$i 也就是說(shuō), i被改名作為一個(gè)類(lèi)的字段,但被冠以 specialname。在代碼中試圖訪(fǎng) 問(wèn)$STATIC$Test1$2020$i是不可能的,因?yàn)樗皇且粋€(gè)有效的標(biāo)識(shí)符。但是在 IL中,將這個(gè)變量加一的代碼卻與一般的類(lèi)字段完全一樣,是通過(guò) ldfld加載的。我覺(jué)得這個(gè)方法十分聰明,把靜態(tài)變量變成生命周期一樣的類(lèi)字段,但是又由編譯器來(lái)控制訪(fǎng)問(wèn)的權(quán)限,讓它成為一個(gè)局部變量。同時(shí)也解釋了 VB為什么要用兩個(gè)不同的關(guān)鍵字來(lái)聲明靜態(tài)變量 —— Static和 Shared。由于局部靜態(tài)變量的實(shí)質(zhì)是類(lèi)的字段,所以它和真正的局部變量還是有所不同的。比如在多線(xiàn)程條件下,對(duì)局部靜態(tài)變量的訪(fǎng)問(wèn)就和 訪(fǎng)問(wèn)字段相同。 Handles和 WithEvents VB除了可以用 C那樣的方法來(lái)處理事件響應(yīng)以外,還有從 VB5繼承下來(lái)的獨(dú)特的事件處理方式 —— WithEvents。 我喜歡稱(chēng)這種事件處理方式為靜態(tài)的事件處理,書(shū)寫(xiě)響應(yīng)事件的方法時(shí)就已經(jīng)決定該方法響應(yīng)的是哪一個(gè)事件,而 C則是在代碼中綁定事件的。 VB中 WithEvents靜態(tài)方法是非常有用的,它可以顯著增強(qiáng)代碼可讀性,同時(shí)也讓 ,不像 C那樣離開(kāi)了窗體設(shè)計(jì)器就必須手工綁定事件。 在 Visual Basic 2020中將加入一個(gè)新的運(yùn)算符 —— TryCast,相當(dāng)于 C的 as運(yùn)算符。我一直希望 VB有這樣一個(gè)運(yùn)算符。 VB目前的類(lèi)型轉(zhuǎn)換運(yùn)算符主要有 CType和 DirectCast。他們的用法幾乎一樣。我詳細(xì)比較了一下這兩個(gè)運(yùn)算符,得出以下結(jié)論: ,兩者沒(méi)有什么區(qū)別,都是直接調(diào)用 castclass指令,除非重載了 類(lèi) 型轉(zhuǎn)換運(yùn)算符 CType。 DirectCast運(yùn)算符是不能重載的。 , CType會(huì)調(diào)用 VB指定的類(lèi)型轉(zhuǎn)換函數(shù)(如果有的話(huà)),比如將 String轉(zhuǎn)換為 Int32時(shí),就會(huì)自動(dòng)調(diào)用 。 塔里木大學(xué)信息工程學(xué)院課程設(shè)計(jì) 第 8 頁(yè) 在原先的 VB6里,有一項(xiàng)奇特的功能 —— 默認(rèn)屬性。在 VB6中,對(duì)象的名稱(chēng)可以直接表示該對(duì)象的默認(rèn)屬性。 VB從 “ 可選參數(shù) ” 這一特性。就是說(shuō),函數(shù)或子程序的參數(shù)有些是可選的,調(diào)用的時(shí)候可以不輸入。其實(shí) VB從 ,只不過(guò)到了。在 VB4里,可選參數(shù)可以不帶默認(rèn)值,而在 VB里,如果使用可選參數(shù),則必須帶有默認(rèn)值。在調(diào)用的時(shí)候, VB若發(fā)現(xiàn)參數(shù)被省略, 則自動(dòng)讀取 .param部分的默認(rèn)值,并顯式傳遞給過(guò)程。這一部分完全由編譯器處理,而且沒(méi)有任何性能損失,和手工傳遞所有參數(shù)是完全一樣的。至于按名傳遞, VB會(huì)自動(dòng)調(diào)整參數(shù)的順序,其結(jié)果與傳統(tǒng)方式的傳遞也沒(méi)有任何的不同。這說(shuō)明我們可以放心地使用這項(xiàng)便利。而且?guī)в锌蛇x參數(shù)的過(guò)程拿到 C中,頂多變成不可選參數(shù),也不會(huì)造成什么其他的麻煩。 COM組件都使用了默認(rèn)參數(shù),而且有些過(guò)程的參數(shù)列表非常長(zhǎng),在 VB里可以輕松地處理它們,而在 C中經(jīng)常讓開(kāi)發(fā)者傳參數(shù)傳到吐血。 致謝 在本次課程設(shè)計(jì)中,我從指導(dǎo)老師 化希 耀和張兵 身上學(xué)到了很多東西。老師認(rèn)真負(fù)責(zé)的工作態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神和深厚的理論水平都使我收益匪淺。他無(wú)論在理論上還是在實(shí)踐中,都給與我很大的幫助,使我得到不少的提高這對(duì)于我以后的工作和學(xué)習(xí)都有一種巨大的幫助,感謝他耐心的輔導(dǎo)。 另外,在游戲開(kāi)發(fā)過(guò)程中許多同學(xué)也給于我們很大的幫助,幫助解決了不少的難點(diǎn),使得游戲能及時(shí)開(kāi)發(fā)完成 ,在此謝謝各位對(duì)此次設(shè)計(jì)的幫助。 參考文獻(xiàn) : [1]龔沛曾,陸慰民,楊志強(qiáng) .Vsual Basic 程序設(shè)計(jì)教程 .高等教育出版社出版 。 [2]劉新民,蔡瓊,白糠生 .Vsual Basic 程序設(shè)計(jì) .清華大學(xué)出版社出版 。 [3]唐凱軍,湯惠莉 .VB6編程 80 例上手 .山東電子音像出版社 。 [4]盧毅 .Vsual Basic 實(shí)例教程 .科學(xué)出版社出版 。 [5]趙欣勝,亢慧娟,劉晟宏 .Vsual Basic 經(jīng)典范例 50 講 .科學(xué)出版社出版 。 塔里木大學(xué)信息工程學(xué)院課程設(shè)計(jì) 第 9 頁(yè) 附件: Private Sub hidefang(a As Integer) 39。定義使方塊不可見(jiàn)的過(guò)程 Select Case a Case 0 39。a= 0使游戲區(qū)方塊不可見(jiàn) cmdfang(n(0)).Visible = False cmdfang(n(1)).Visible = False cmdfang(n(2)).Visible = False
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1