簡體   English   中英

Lua腳本到C ++代碼

[英]Lua script to C++ code

我正在為Lua編寫C函數。 我有很多電話,如lua_gettable,lua_touserdata等

我的C函數可能會接收復雜的結構,例如表格作為字段。

我很難對堆疊機器進行編程。

有沒有辦法編寫將轉換為C代碼的Lua腳本。

或者其他一些工具可以幫助我為lua腳本編寫這樣的C函數。

謝謝。

PS

這是一個例子: -

local data = {}
data.x = {}
data.x.y = 1
myCfunc(data)

int myCfunc(lua_State * L){
 lua_pushstring(L, "x");
 lua_gettable(L, 2);
 lua_pushstring(L, "y");
 lua_gettable(L, -2);
 double y = lua_tonumber(L, -1);
 lua_pop(L, 2);
}

代替

function myCfunc(data)
 y = data.x.y
end

我真正的代碼要復雜得多,我正在尋找一些可以幫助我的自動代碼生成。

試試LuaToCee

也許對盧阿可以提供幫助。

從C#開始,我所做的就是編寫代碼來轉換JSON格式的LUA數據結構。 然后我可以通過任何JSON庫加載數據,包括所有的鈴聲和​​口哨聲。 它是一種圓形解決方案,但您只需編寫一次JSON編碼代碼。

SWIG Simplified Wrapper和Interface Generator http://www.swig.org/它通常用於C to Lua,但是通過定義一些全局變量,你可以將它用作Lua到C

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM