婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > C++中調用Lua函數實例

C++中調用Lua函數實例

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

唉,今天心情有點糟糕,我就少說一些啰嗦的話了。
(旁白:太好了…)

上一章傳送門:https://www.jb51.net/article/55096.htm

經過前面幾章的介紹,相信大家對Lua的堆棧已經比較熟悉了,如果還不是很熟悉的朋友,建議多看幾遍前面的教程,或者多敲幾次代碼。

那么,如果已經對Lua的堆棧比較熟悉,接下來的內容就很簡單了。

今天我們來看看C++如何調用Lua的函數,先看看現在Lua文件是什么樣的:

復制代碼 代碼如下:

-- helloLua.lua文件
myName = "beauty girl"

helloTable = {name = "mutou", IQ = 125}

function helloAdd(num1, num2)
 return (num1 + num2)
end;


我們看到多了個helloAdd函數,那么,現在我們要用C++調用這個函數。
(旁白:肯定又要用到getglobal了,每次都有它~!= =)
 
直接上代碼了:
復制代碼 代碼如下:

/* C++調用lua的函數 */
void HelloLua::demo3() {
    lua_State* pL = lua_open();
    luaopen_base(pL);

    /* 執行腳本 */
    luaL_dofile(pL, "helloLua.lua");

    /* 把helloAdd函數對象放到棧中 */
    lua_getglobal(pL, "helloAdd");

    /* 把函數所需要的參數入棧 */
    lua_pushnumber(pL, 10);
    lua_pushnumber(pL, 5);

    /*
        執行函數,第一個參數表示函數的參數個數,第二個參數表示函數返回值個數 ,
        Lua會先去堆棧取出參數,然后再取出函數對象,開始執行函數
    */
    lua_call(pL, 2, 1);

    int iResult = lua_tonumber(pL, -1);
    CCLOG("iResult = %d", iResult);
}


簡單說明一下步驟:
1) 執行腳本(旁白:我就知道你會說廢話。。。)
2) 將helloAdd函數放到棧中:lua_getglobal(pL, “helloAdd”) 。(旁白:看吧,我就知道~!)
3) helloAdd有2個參數,我們要把參數傳遞給lua,所以2個參數都要放到棧里。
4) 第2和第3步已經把函數所需要的數據都放到棧里了,接下來只要告訴lua去棧里取數據,執行函數~! 調用lua_call即可,注釋已經很詳細了,這里就不重復了。
(旁白:太簡單了點吧,反正不管做什么事情,把東西丟到棧里,然后從棧里取東西,就OK了~你可以滾了,以后教程我來寫,你負責吐槽~)
 
來,大家忽略旁白,教程什么的還是我來寫比較好,主要是,吐槽這工作,不符合我的身份~
(旁白:…我有種被打擊了的感覺)
 
本章到此結束,很簡單吧?~

下一章我們介紹在Lua中調用C++的函數~!
(旁白:這個我喜歡~!)

您可能感興趣的文章:
  • Lua教程(二十):Lua調用C函數
  • Lua教程(四):在Lua中調用C語言、C++的函數
  • Lua教程(三):C語言、C++中調用Lua的Table示例
  • Lua中調用C++函數實例
  • Lua調用自定義C模塊
  • Lua中調用C語言函數實例
  • Lua教程(十九):C調用Lua
  • Lua編程示例(六): C語言調用Lua函數
  • C語言中調用Lua函數實例
  • C語言與Lua之間的相互調用詳解

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

巨人網絡通訊聲明:本文標題《C++中調用Lua函數實例》,本文關鍵詞  C++,中,調用,Lua,函數,實例,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《C++中調用Lua函數實例》相關的同類信息!
  • 本頁收集關于C++中調用Lua函數實例的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 固安县| 富顺县| 白沙| 垫江县| 敖汉旗| 汨罗市| 六枝特区| 马公市| 类乌齐县| 普兰县| 财经| 镶黄旗| 原阳县| 南涧| 灵山县| 永胜县| 溧阳市| 莱州市| 松潘县| 攀枝花市| 台州市| 广水市| 岳阳县| 台东县| 通山县| 武山县| 达日县| 苏尼特左旗| 安庆市| 安仁县| 镇雄县| 神木县| 平乐县| 西丰县| 河间市| 定安县| 江源县| 平顶山市| 运城市| 堆龙德庆县| 随州市|