Xlua侧如何接受CSharp侧的可变参数
CSharp侧的代码:
using UnityEngine;
namespace LGSTEST
{
public class Lgs : MonoBehaviour
{
void Update()
{
if (Input.GetMouseButtonDown(0))
{
TestParams(12, "110");
}
}
void TestParams(params object[] param)
{
Debug.Log(param[0]);
}
}
}用Xlua对方法 TestParams 进行修复的时候,lua代码的写法:
xlua.hotfix(CS.LGSTEST.Lgs, "TestParams", function(self, ...)
local param = {...};
print("------- " .. param[1] .." ++++++ " .. param[2])
print(param[3])
end)运行结果:

需要注意的有两一点:
lua侧对C#的可变参数的接受及使用方式,... 接受,{...}包成数组再使用,索引是从1开始的。
相关推荐
YClimb 2020-09-15
amazingbo 2020-08-16
CyborgLin 2020-08-15
一叶不知秋 2020-07-09
啸林 2020-07-04
magicandy 2020-06-16
鲁氏汤包王 2020-06-08
YEEHOLIC 2020-06-03
晨曦之星 2020-05-29
paopao00 2020-05-20
czsay 2020-05-20
cwgxiaoguizi 2020-05-19
Yasin 2020-05-06
loviezhang 2020-05-03
FellowYourHeart 2020-04-23
东方咖啡屋 2020-04-19
fetten 2020-04-15