如何用dostring来运行lua文件
用dostring来运行一个有返回值的函数,如何获取返回值
听说lua执行函数是单线程,而且执行一个带参的函数需要自己清理堆栈
为什么绑定的c++函数,只能接收一个参数,而且必须是一个int返回值.如:int Show_Msg(LuaState* state)
关于dofile:
对于dofile是不是读取一个文件的所有指令,然后每条都会去执行dotring.
如果不是,用两个线程,调用同样的带返回值的函数.
一个是调用dostring
一个dofilre调用文件(文件内也是同样的指令)
那么长时间执行后,两方数据是否会被破坏?
还有两点忘了写
lua默认为全局变量
那么 形参和返回值是临时的还是全局的呢?
funciton Msg(x,y)
a=x+y
return a
end
其中的 x,y,a是全局的还是临时的
å
³äºdostringä¸çå±é¨åé è¿éå好æ¯æ个ç¹æ®æ
åµç
æç¨çluaforwindowsç´æ¥è¿è¡ç 没dostring å°±å ç¨loadstringäº
local a = 1è¿éa = 123æ§è¡æ¶ ä¸ä¼ç»å±é¨åéaè¿è¡èµå¼æä½ï¼èæ¯ä¿®æ¹äºå ¨å±åéa
对äºå°åºæ¯å±é¨åéè¿æ¯å ¨å±åéçå¤æ ä¾æ®çæ¯ ä½¿ç¨è¿ä¸ªåéçè¿ä¸ªåºå å¨ä½¿ç¨ä¹å æ¯å¦æè¿å±é¨åéç声æ
æ¯å¦
a = 1è¿æ ·å°±è½çå°2个ä¸åça
èå¨function Msg(x,y)ä¸
æ¯å 为xåyæ¯è¢«å½ä½å®åä¼ è¿æ¥ç å½æ°éçå®å å¨å½æ°å é¨é½æ¯ä½ä¸ºå±é¨åéæ¥ä½¿ç¨ æ以xyæ¯å±é¨èaæ¯å ¨å±