一个CCLuaStack的函数不明的地方

// 下面函数第二个参数是怎么用的?求解
int CCLuaStack::executeGlobalFunction(const char functionName, int numArgs / = 0 /)
{
lua_getglobal(m_state, functionName); /
query function by name, stack: function */
if (!lua_isfunction(m_state, -1))
{
CCLOG(" name ‘%s’ does not represent a Lua function", functionName);
lua_pop(m_state, 1);
return 0;
}

if (numArgs > 0)
{
    lua_insert(m_state, -(numArgs + 1));                        /* L: ... func arg1 arg2 ... */
}
return executeFunction(numArgs);

}

第二个参数是要执行的Lua函数的参数个数。如果不为0,需要在调用这个函数前将需要传递给Lua函数的参数先压栈。

先用 pushValue() 接口将参数放入 stack,然后调用该方法指定有几个值要作为参数传递给 Lua function.