lua中文手冊(cè) 如何解析Lua中的table數(shù)據(jù)?
如何解析Lua中的table數(shù)據(jù)?調(diào)用getluavar(luastate,”項(xiàng)目。A.一個(gè)“),以獲得項(xiàng)目的價(jià)值。A.一個(gè)放到堆棧上,然后根據(jù)類型使用luavar utonumber(luastat
如何解析Lua中的table數(shù)據(jù)?
調(diào)用getluavar(luastate,”項(xiàng)目。A.一個(gè)“),以獲得項(xiàng)目的價(jià)值。A.一個(gè)放到堆棧上,然后根據(jù)類型使用luavar utonumber(luastate,-1)或Lua u2; Data void getluavar(Lua)from toString(luastate,-1)u2; State*pLuaState,const char*strVarName){const char pIndS=strVarNameconst char*pIndE=strVarNameTub8 bparts=false//判斷是否分為兩部分,因?yàn)長ua用于第一部分Getglobal,所以Lua用于其他部分gettablewhile(0!=*pIndE){if(“”==*pIndE){if(bParts){luauuuuPushString(pLuaState,std::string(pIndS,pIndE-pIndS).cuStr())luauGetTable(pLuaState,-2)luauRemove(pLuaState,-2)}else{luauGetGlobal(pLuaState,std::string(pIndS,pIndE-pIndS).cuStr())bParts=true}pIndEpIndS=pIndE}else{pIndE}if(bParts){luaupushstring(pLuaState,std::string(pIndS,pIndE-pIndS).cstr())luaugettable(pLuaState,-2)luauuremove(pLuaState,-2)}else{luauugetglobal(pLuaState,std::string(pIndS,pIndE-pIndS).cstr())}