作品
作品
C++輕量級(jí)文法分析器更新,代碼+DEMO×3(下載)
摘要:
對(duì)上一次的分析器進(jìn)行重構(gòu)之后,Combinator Parser加入了對(duì)字符串、詞法分析器以及正則表達(dá)式的新支持。功能上則添加了對(duì)于歧義和非歧義的控制。
源代碼與Demo下載內(nèi)詳
閱讀全文
posted @
2009-04-06 06:18 陳梓瀚(vczh) 閱讀(10219) |
評(píng)論 (34) 編輯
C++輕量級(jí)可配置語法分析器(開源)
摘要: 這個(gè)分析器包含了四個(gè)文件:
VL_Data_Basic.h(使用了其中的智能指針VL_AutoPtr和一些類型重命名)
VL_CpData.h(數(shù)據(jù)結(jié)構(gòu))
VL_CpKernel.h/cpp(詞法分析器和語法分析器)
這個(gè)東西供給熟悉編譯原理(至少熟悉BNF notation)的人互相學(xué)習(xí)交流。
內(nèi)附代碼下載以及使用的例子。
閱讀全文
posted @
2009-04-03 01:21 陳梓瀚(vczh) 閱讀(6329) |
評(píng)論 (9) 編輯
GUI Preview Demo完成!
摘要: GUI Preview Demo完成!代碼結(jié)構(gòu)、下載以及注意事項(xiàng)內(nèi)詳。
閱讀全文
posted @
2008-08-25 04:17 陳梓瀚(vczh) 閱讀(20338) |
評(píng)論 (18) 編輯
Vczh Free Script 2.0 beta 發(fā)布
摘要: 作者保留對(duì)源代碼的一切權(quán)利
文件是一個(gè)rar壓縮包,結(jié)構(gòu)如下:
【產(chǎn)品】
【Demo】兩個(gè)Demo的編譯結(jié)果。這個(gè)文件夾里面的腳本代碼僅供測試用。
【庫】編譯結(jié)果以及Vczh Free Script 2.0提供的插件封裝,使用Vczh Free Script腳本語言編寫。
【文檔>】使用說明書。
【源代碼】源代碼僅能使用Visual C++ 2005或以上編譯器編譯。
【FreeScript】使用FsRuntime.dll寫的C++Demo,控制臺(tái)虛擬機(jī)。
【FreeScript_CSharp】使用FsRuntime_clr.dll寫的C#Demo,控制臺(tái)虛擬機(jī)。
【FsRuntime】Vczh Free Script 2.0 DLL接口。
【FsRuntime_CLR】使用FsRuntime.dll寫的.NET接口。
【Library】
【Data】數(shù)據(jù)輸出以及必要的操作系統(tǒng)接口封裝。
閱讀全文
posted @
2008-07-01 05:35 陳梓瀚(vczh) 閱讀(11188) |
評(píng)論 (23) 編輯
如何手寫語法分析器
摘要: 在寫可配置的語法分析器之前,我覺得還是先說說如何手寫語法分析器好。因?yàn)閷?duì)于大部分人來說,開發(fā)一個(gè)可配置的語法分析器并沒有什么作用,反而針對(duì)某種特定的語法開發(fā)特定的語法分析器是特別有必要的。典型的有表達(dá)式計(jì)算器、某種格式化的文件(HTML、XML等)或者是其他的復(fù)雜而且符合樹型結(jié)構(gòu)的字符串。根據(jù)目前論壇的反應(yīng)來看,有一些朋友們對(duì)如何開發(fā)一套自己的腳本引擎比較感興趣。等基礎(chǔ)的文章都寫完以后我會(huì)考慮撰寫一個(gè)系列的文章介紹如何開發(fā)自己的腳本引擎。
這篇文章會(huì)附帶一些必要的代碼以便幫助讀者們理解。為了方便,代碼使用DevC++開發(fā)。
閱讀全文
posted @
2008-06-15 05:59 陳梓瀚(vczh) 閱讀(40184) |
評(píng)論 (28) 編輯
IT項(xiàng)目管理大作業(yè):Tower Defense 2008(最新修改:2008.05.03晚上8點(diǎn))
摘要: 華南理工大學(xué)軟件學(xué)院本科05級(jí)3班,陳梓瀚(vczh)
游戲規(guī)則:
1:地圖上可以建立三種炮塔塔,游戲有上、左兩個(gè)敵人的起始點(diǎn),兩個(gè)起始點(diǎn)的敵人分別到下、右兩個(gè)終止點(diǎn)。
2:每一盤有1000個(gè)等級(jí)分別從1-200的敵人從起始點(diǎn)出發(fā)自動(dòng)尋路前往終止點(diǎn)。如果有10個(gè)敵人到達(dá)了終止點(diǎn)的話則游戲結(jié)束,玩家輸。如果所有的敵人都被消滅或到達(dá)終止點(diǎn)之后,到達(dá)終止點(diǎn)的敵人沒有10個(gè)的話則游戲結(jié)束,玩家贏。
3:建立炮塔的方格敵人不能通過。在建立一個(gè)炮塔的時(shí)候,如果程序發(fā)現(xiàn)這個(gè)炮塔的建立會(huì)導(dǎo)致敵人找不到任何路徑前往各自的終止點(diǎn)的話,則建立被禁止。
4:炮塔可以是用金錢建立或升級(jí),可以賣出貨的金錢。消滅敵人能夠獲得金錢。
5:三種炮塔分別是
·升級(jí)后數(shù)量變多,射程變長,攻擊力變強(qiáng)
·升級(jí)后速度變快,射程變長,攻擊力變強(qiáng)
·升級(jí)后一次爆炸傷害的范圍變大,射程變長,攻擊力變強(qiáng)
·升級(jí)一次后減速范圍變大,減速因子變大
6:炮彈在
閱讀全文
posted @
2008-05-02 21:46 陳梓瀚(vczh) 閱讀(9578) |
評(píng)論 (27) 編輯