ToLua 调用lua方法 3
private string luaString = @"
	function testFunc(num)
		return num*2
	end

	t = {}
	t.testFunc = testFunc
";

private LuaFunction luaFunc;

void Start () {
	LuaState lua = new LuaState();

	lua.Start ();
	lua.DoString (luaString);
	luaFunc = lua.GetFunction ("testFunc");
	
	luaFunc.BeginPCall ();
    luaFunc.Push (2000);//参数的推入
    luaFunc.PCall ();//调用
    int s4 =  (int)luaFunc.CheckNumber ();//获取返回值
    luaFunc.EndPCall ();//结束释放资源
    Debug.Log (s4);
    //清理
}

据说这种调用方法是不会产生内存垃圾的,但是不方便使用


首页 我的博客
粤ICP备17103704号