XLUA 实例化C#的Dictionary,List

本文详细介绍了如何在Lua中实例化C#中的自定义类作为Dictionary的值类型,解决了使用旧版xlua时,因未使用Assembly-CSharp程序集关键字而引发的错误问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天正好需要热更一个东西,在C#中,有一个Dictionary<string, ABC> abcDic 没有实例化。需要在lua中进行实例化 new 一下。

在官方文档里面有提到过这一块,大家可以自行看一看https://github.com/Tencent/xLua/blob/master/Assets/XLua/Doc/faq.md#%E6%B3%9B%E5%9E%8B%E5%AE%9E%E4%BE%8B%E6%80%8E%E4%B9%88%E6%9E%84%E9%80%A0

其中v2.1.12版本是在2018.7.9更新的,大家注意版本号https://github.com/Tencent/xLua/blob/master/Assets/XLua/CHANGELOG.txt

 

这里之所以在博客里复述一遍是因为,我们大部分的List或者Dictionary中,value用的都是自定义的类,然后要是使用旧版本的xlua,我们这种小白可能就会碰到一个问题,没有使用Assembly-CSharp程序集关键字导致报错。当你要实例化使用自定义类的Dictionary时,如ABC,应该如下:

self.adcDic = CS.System.Activator.CreateInstance(CS.System.Type.GetType('System.Collections.Generic.Dictionary`2[[System.String, mscorlib],[MyExamples.ABC, Assembly-CSharp]],mscorlib'))

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值