• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 17  文章 - 48  trackbacks - 0
            <2011年1月>
            2627282930311
            2345678
            9101112131415
            16171819202122
            23242526272829
            303112345

            常用鏈接

            留言簿(3)

            隨筆檔案

            搜索

            •  

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            用Lua也有大半年了,從用Lua開(kāi)始就想寫(xiě)個(gè)Lua調(diào)試器,不過(guò)由于種種原因沒(méi)寫(xiě),這周上班抽了點(diǎn)時(shí)間寫(xiě)了(我承認(rèn)上班偷懶了,不過(guò)多是休息時(shí)間)。(點(diǎn)此下載

            Lua本身沒(méi)有提供調(diào)試器,不過(guò)它自帶了一個(gè)debug庫(kù),提供了基本的變量值獲取和代碼執(zhí)行hook,有了這些基本功能要寫(xiě)一個(gè)調(diào)試器不難。

            此調(diào)試器根據(jù)調(diào)試方式分為normal、step in、step over、next line四種mode,分別對(duì)應(yīng)斷點(diǎn)、步進(jìn)、跳出函數(shù)、執(zhí)行下行的功能。斷點(diǎn)類型分為行斷點(diǎn)和函數(shù)斷點(diǎn),分別在執(zhí)行到相應(yīng)行和相應(yīng)函數(shù)的時(shí)候斷下。在斷下的時(shí)候就可以打印和修改變量,通過(guò)建立一個(gè)新的chunk并將環(huán)境設(shè)置成相應(yīng)函數(shù)的環(huán)境,再執(zhí)行chunk來(lái)獲取和修改變量。

            因?yàn)槭敲钚械模诿钚羞€沒(méi)有機(jī)會(huì)添加斷點(diǎn)的時(shí)候,要添加斷點(diǎn)就要通過(guò)debugger.addfuncbreak和debugger.addlinebreak來(lái)添加函數(shù)和行斷點(diǎn),通常Lua是用于C++的腳本語(yǔ)言,因此程序通常是有一個(gè)可以直接執(zhí)行Lua腳本指令的入口,這樣的入口就可以打下第一個(gè)斷點(diǎn),這樣在斷下斷點(diǎn)后就可以在命令提示符下做所有的操作了。

            代碼是上班抽時(shí)間寫(xiě)的,寫(xiě)的很隨意,也沒(méi)多少注釋,權(quán)當(dāng)玩具吧。目前的功能基本能滿足我的要求了,也不打算繼續(xù)改進(jìn)了。調(diào)試器是用來(lái)幫助找錯(cuò)誤,不要過(guò)分依賴調(diào)試器。Robert C. Martin說(shuō)Debuggers are a wasteful Timesink。雖說(shuō)有些偏激,但是不無(wú)道理。

            posted on 2011-01-01 01:44 airtrack 閱讀(4793) 評(píng)論(3)  編輯 收藏 引用

            FeedBack:
            # re: 簡(jiǎn)單的Lua命令行調(diào)試器 2011-01-02 22:27 expter
            我見(jiàn)云風(fēng)也寫(xiě)過(guò),可以集成到項(xiàng)目中調(diào)試不哦。  回復(fù)  更多評(píng)論
              
            # re: 簡(jiǎn)單的Lua命令行調(diào)試器 2011-01-03 01:32 airtrack
            @expter
            可以啊,這個(gè)調(diào)試器主要就是用來(lái)調(diào)試作為C++擴(kuò)展的Lua。  回復(fù)  更多評(píng)論
              
            # re: 簡(jiǎn)單的Lua命令行調(diào)試器 2011-01-06 17:44 true
            如果把luadebugger寫(xiě)成VS的插件,估計(jì)可以賣錢(qián)了,我有這樣的想法,但也是沒(méi)有時(shí)間去實(shí)現(xiàn)  回復(fù)  更多評(píng)論
              

            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            久久综合狠狠色综合伊人| 99re这里只有精品热久久| 人妻无码精品久久亚瑟影视| 久久久免费观成人影院| 亚洲伊人久久精品影院| 久久精品国产亚洲AV大全| 狠狠精品久久久无码中文字幕 | 久久成人精品| 久久香蕉国产线看观看精品yw| 俺来也俺去啦久久综合网| 久久综合视频网| 久久国产精品一区| 久久精品国产亚洲一区二区| 久久天天躁狠狠躁夜夜躁2014| 精品午夜久久福利大片| 中文字幕人妻色偷偷久久| 久久婷婷色综合一区二区| 色综合久久综合网观看| 久久精品无码专区免费青青| 久久天天躁狠狠躁夜夜不卡| 久久精品九九亚洲精品天堂| 久久久亚洲欧洲日产国码aⅴ | 久久免费的精品国产V∧ | 久久婷婷五月综合97色直播| 四虎久久影院| 久久伊人五月天论坛| 精品久久久久久中文字幕大豆网| 亚洲综合精品香蕉久久网97| 精品久久久久久久久午夜福利| 久久精品国产亚洲AV蜜臀色欲 | 中文成人久久久久影院免费观看| 久久99国产精品久久99果冻传媒| 色天使久久综合网天天| 一本色道久久88综合日韩精品| 精品久久久久久国产三级| 久久成人国产精品二三区| 久久青青草原综合伊人| 99热精品久久只有精品| 久久中文字幕视频、最近更新| 久久高潮一级毛片免费| 少妇久久久久久被弄到高潮|