Xlua侧如何接受CSharp侧的可变参数

Posted luguoshuai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Xlua侧如何接受CSharp侧的可变参数相关的知识,希望对你有一定的参考价值。

CSharp侧的代码:

 1 using UnityEngine;
 2 
 3 namespace LGSTEST
 4 {
 5     public class Lgs : MonoBehaviour
 6     {
 7         void Update()
 8         {
 9             if (Input.GetMouseButtonDown(0))
10             {
11                 TestParams(12, "110");
12             }
13         }
14 
15         void TestParams(params object[] param)
16         {
17             Debug.Log(param[0]);
18         }
19     }
20 }

用Xlua对方法 TestParams 进行修复的时候,lua代码的写法:

1 xlua.hotfix(CS.LGSTEST.Lgs, "TestParams", function(self, ...)
2     local param = {...};
3     print("------- " .. param[1] .." ++++++ " .. param[2])
4     print(param[3])
5 end)

运行结果:

技术图片

需要注意的有两一点:

lua侧对C#的可变参数的接受及使用方式,... 接受,{...}包成数组再使用,索引是从1开始的。

以上是关于Xlua侧如何接受CSharp侧的可变参数的主要内容,如果未能解决你的问题,请参考以下文章

如何配置设备侧的SNMP参数

怎样去掉文件夹窗口中左侧的项目?如图..

AI端侧落地,京东AI技术如何部署边缘?

每日一题提取一个数最后侧的1

每日一题提取一个数最后侧的1

如何创建一个接受可变数量参数的 Java 方法?