校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Lua中簡單的錯誤處理實例

Lua中簡單的錯誤處理實例

熱門標簽:武漢百應人工智能電銷機器人 百度地圖標注位置網站 電腦外呼系統輻射大嗎 如何利用高德地圖標注家 上海企業外呼系統排名 揚州電銷外呼系統軟件 智能語音電銷的機器人 開通400電話申請流程 400手機電話免費辦理

昨天遇到另外一位獨立游戲開發者,所以多聊了一會,然后…然后就沒有看書了。(小若:借口!借口!)
 
今天來聊聊錯誤處理吧,不過畢竟這只是前面的章節,書上的內容似乎有點一筆帶過的味道。

沒關系,簡單更好~

1.紅色警報——error

我們應該能經??吹筋愃埔韵碌腻e誤信息:

復制代碼 代碼如下:

[LUA-print] LUA ERROR: [string "src/main.lua"]:108: [string "src/main.lua"]:89: attempt to index global ‘a' (a nil value)

這是在發生錯誤時給我們的提示,通常,這代表我們的代碼不能繼續正常執行下去了。
 
但你有知不知道,我們可以偽造這種錯誤,沒錯,主動調用error函數,就會出現這種信息。
如下代碼:
復制代碼 代碼如下:

    error("你的智商不多了,趕緊休息,恢復一下吧");

然后,運行,輸出如下信息:

復制代碼 代碼如下:

[LUA-print] LUA ERROR: [string "src/main.lua"]:109: [string "src/main.lua"]:96: 你的智商不多了,趕緊休息,恢復一下吧

這太厲害了,以后你看誰不爽,就往他代碼里塞上這句話吧,比如在項目上線前塞進去~
 
言歸正傳,當我們在調用一個函數之前,可以先判斷即將傳遞的參數是否正常,如果不正常,我們就可以選擇直接拋出error,方便寫代碼的過程中發現問題。

比如下面的代碼:

復制代碼 代碼如下:

    local name = io.read();
    if name ~= "笨木頭" then
        error("你是一個非常善良有愛心的人,我很喜歡你..所以,去死吧!");
    end

只要發現輸入的內容不是“笨木頭”,就狠狠地拋出異常。

2.偷個懶——assert

類似剛剛那種判斷錯誤的代碼,似乎有點啰嗦,于是,我們可以用assert代替形如if not then的代碼。

比如上面的代碼改為:

復制代碼 代碼如下:

    local name = io.read();
    local result = assert(name == "笨木頭", "你是一個非常善良有愛心的人,我很喜歡你..所以,去死吧!");

如果assert的第一個參數為不為false,則返回第一個參數的值;否則,執行error函數,輸出錯誤信息,錯誤信息的內容為assert的第二個參數。

輸出結果和之前是一樣的~

3.捕獲錯誤代碼——pcall

如果在錯誤發生時,我們不希望代碼停止運行,而是做一些緊急措施,那么,可以使用pcall捕獲錯誤。
如以下代碼:

復制代碼 代碼如下:

    function test()
        print(a[1]);
    end
    if pcall(test) then
        print("正常,呵呵");
    else
        print("哎,函數出錯了,我正在幫你處理,放心吧,等我睡醒就...不是,等你睡醒就沒事了~");
      
    end

函數test執行的時候肯定會報錯的,因為并不存在a這個table。
使用pcall調用test函數,如果test不報錯,則pcall返回ture,否則,返回false。
利用這個特性,我們就可以捕獲異常,做一些緊急處理。

運行代碼, 輸出結果如下:

復制代碼 代碼如下:

[LUA-print] 哎,函數出錯了,我正在幫你處理,放心吧,等我睡醒就…不是,等你睡醒就沒事了~
這緊急處理的方式還挺不錯的,呵呵。(小若:不錯你個頭啊!這和沒處理有差別嗎?)

pcall除了會返回true或者false外,還能返回函數的錯誤信息,如下代碼:
復制代碼 代碼如下:

    function test()
        print(a[1]);
    end
    local status, err = pcall(test);
    if status then
        print("正常,呵呵");
    else
        print("哎,函數出錯了,我正在幫你處理,放心吧,等我睡醒就...不是,等你睡醒就沒事了~");
        print(err);
    end

pcall的第一個返回值和之前一樣,true或者false。

而第二個參數則是test函數拋出的錯誤信息,執行代碼,結果如下:

復制代碼 代碼如下:

[LUA-print] 哎,函數出錯了,我正在幫你處理,放心吧,等我睡醒就…不是,等你睡醒就沒事了~
[LUA-print] [string "src/main.lua"]:94: attempt to index global ‘a' (a nil value)

4.結束

關于錯誤處理,好像沒有什么好玩的東西,所以,就寫這么多吧~

您可能感興趣的文章:
  • Lua中的異常處理pcall、xpcall、debug使用實例
  • Lua函數與字符串處理簡明總結
  • Lua極簡入門指南(三): loadfile和錯誤處理
  • Lua讀取和寫入文件處理例子
  • 淺析Lua編程中的異常處理
  • lua日志文件處理代碼

標簽:宜賓 張掖 黑龍江 延邊 武漢 江西 嘉峪關 新余

巨人網絡通訊聲明:本文標題《Lua中簡單的錯誤處理實例》,本文關鍵詞  Lua,中,簡單,的,錯誤,處理,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Lua中簡單的錯誤處理實例》相關的同類信息!
  • 本頁收集關于Lua中簡單的錯誤處理實例的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    一区二区三区在线观看视频| 色视频欧美一区二区三区| 国产亚洲制服色| 色综合天天综合网天天看片| 三级影片在线观看欧美日韩一区二区| 91精品国产手机| 成人免费的视频| 亚洲成人在线观看视频| 26uuu久久天堂性欧美| 91一区二区在线| 久久精品999| 亚洲伦理在线精品| 欧美日韩激情在线| 成人国产亚洲欧美成人综合网 | 一区二区三区在线看| 色综合久久久久综合99| 日本特黄久久久高潮| 日韩视频免费观看高清完整版| 波多野结衣中文字幕一区二区三区| 一区二区激情小说| 国产亚洲欧美一区在线观看| 欧美日韩综合色| 国产在线观看免费一区| 国产女同性恋一区二区| 欧美精品一卡二卡| av中文字幕不卡| 色婷婷久久久亚洲一区二区三区| 免费国产亚洲视频| 亚洲精品水蜜桃| 欧美精品一区二区三| 91香蕉视频黄| 国产综合久久久久久鬼色| 亚洲国产中文字幕| 欧美激情一区二区三区不卡| 日韩女优av电影在线观看| 色拍拍在线精品视频8848| 一区二区国产盗摄色噜噜| 国产亚洲欧美日韩在线一区| 欧美亚洲动漫另类| 99久久久免费精品国产一区二区| 久久精品国产99久久6| 成人欧美一区二区三区| 日韩欧美在线一区二区三区| 欧美图片一区二区三区| 91国偷自产一区二区开放时间| 懂色av一区二区三区免费观看| 亚洲码国产岛国毛片在线| 久久久久久久久久久99999| 欧美主播一区二区三区美女| 成人午夜在线视频| 国产精品一区二区久激情瑜伽 | 欧美日韩国产电影| 色88888久久久久久影院按摩| 成人av综合在线| 丰满白嫩尤物一区二区| 日本最新不卡在线| 亚洲狠狠丁香婷婷综合久久久| 国产精品少妇自拍| 亚洲超碰精品一区二区| 国产日韩一级二级三级| 日本午夜一本久久久综合| 九九精品一区二区| 亚洲美女免费视频| 欧美一区二区三区影视| 91麻豆精品在线观看| 国产69精品久久777的优势| 国产精品自拍毛片| 国产白丝精品91爽爽久久| 国产精品资源网| 美国毛片一区二区| 国产一区二区三区不卡在线观看| 亚洲国产成人porn| 蜜桃久久久久久| 国产精品一区二区在线观看不卡| 国产成人aaa| 国产原创一区二区| 亚洲色图第一区| 欧美美女网站色| 欧美丰满一区二区免费视频| 日韩免费一区二区| 国产性色一区二区| 亚洲欧美日韩系列| 亚洲一区二区精品久久av| 免费观看成人av| 国产精品系列在线播放| 国产精品一区一区| 91免费版在线看| 欧美精品在线观看播放| 精品国产乱码久久久久久久| 国产精品成人一区二区艾草| 亚洲精品国产一区二区精华液| 亚洲成a人v欧美综合天堂下载| 日韩精品电影一区亚洲| 国产在线日韩欧美| 99国产精品久久久久久久久久| 91免费看`日韩一区二区| 91精品在线免费观看| 国产欧美日韩麻豆91| 亚洲丝袜美腿综合| 美女网站一区二区| a4yy欧美一区二区三区| 欧美一区二区女人| 日韩1区2区日韩1区2区| 国产不卡视频在线观看| 欧美三级在线播放| 国产欧美一区二区三区沐欲| 亚洲午夜免费电影| 国产精品夜夜爽| 精品1区2区3区| 国产日产欧美精品一区二区三区| 久久精品视频在线看| 国产精品人人做人人爽人人添| 日韩中文字幕91| 日本高清无吗v一区| 国产精品黄色在线观看| 激情综合网av| 欧美一二三四在线| 性久久久久久久久久久久| 一本大道久久a久久综合| 国产精品久久久久久亚洲毛片 | 色婷婷精品久久二区二区蜜臂av| 亚洲精品一区二区三区蜜桃下载 | 成人av在线电影| 欧美理论片在线| 日韩一区二区精品葵司在线| 一区二区三区在线视频观看58| 懂色av一区二区在线播放| 久久久久久久久岛国免费| 精品一区二区三区香蕉蜜桃| 欧美一区二区三区视频免费播放| 亚洲国产毛片aaaaa无费看| 成人av网站大全| 国产精品久久久久aaaa樱花| 国产成人综合网站| 中文字幕精品一区二区三区精品| 国产一区二区三区四区五区美女| 欧美成人精品1314www| 蜜桃视频一区二区三区在线观看| 日韩一区二区电影网| 99精品视频在线观看免费| 国产欧美日韩综合| 成人免费视频一区| 日韩精品福利网| 在线中文字幕不卡| 一区二区三区久久| 欧美视频一区二区| 三级不卡在线观看| 日韩美女主播在线视频一区二区三区 | 亚洲国产成人一区二区三区| 国产aⅴ综合色| 成人免费在线播放视频| 91看片淫黄大片一级在线观看| 亚洲欧美国产三级| 欧美日韩一区不卡| 麻豆精品精品国产自在97香蕉 | 亚洲在线视频免费观看| 欧美一区二区三区视频在线观看 | 99视频超级精品| 亚洲精品福利视频网站| 51午夜精品国产| 国产麻豆成人精品| 国产精品白丝在线| 欧美日韩亚洲综合在线| 另类小说色综合网站| 国产亚洲一区二区三区在线观看| aaa欧美日韩| 三级一区在线视频先锋| 国产视频一区二区三区在线观看| 亚洲人成在线观看一区二区| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | www.色精品| 亚洲综合久久久久| 日韩午夜三级在线| 国产一区二区三区久久久| 亚洲四区在线观看| 欧美一区二区三区四区久久| 国产suv精品一区二区883| 有码一区二区三区| 91精品国产91久久综合桃花 | 色先锋久久av资源部| 成人一区二区在线观看| 亚洲一线二线三线久久久| 日韩午夜小视频| 色综合激情五月| 国产一区二区三区免费在线观看| 亚洲视频1区2区| 日韩一区二区在线看片| av一本久道久久综合久久鬼色| 成人av网址在线观看| 亚洲黄色小视频| 欧美精品一区二区三| 色噜噜夜夜夜综合网| 国产精品自在欧美一区| 亚洲成人av中文| 亚洲欧洲另类国产综合| 欧美一级黄色录像| 色综合色综合色综合色综合色综合| 麻豆视频观看网址久久| 一个色综合网站| 国产精品色哟哟网站|