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