ToLua#--lua调用C#泛型结构以及遍历

ToLua#并不支持直接调用C#中的泛型结构,需要调用C#中的泛型结构时考虑一下解决方法:

首先在CustomSetting文件中添加:

    _GT(typeof(Dictionary<string,int>)),                
    _GT(typeof(KeyValuePair<string,int>)),  
    //泛型字典  
    _GT(typeof(List)),
    //泛型列表 
    _GT(typeof(Mail)), 
    //自定义类

然后重新生成一下。

在Lua中,参考以下使用方法:

local iter = mails:GetEnumerator()
--mails是c#中一个Mail类型的列表,已经被传递进Lua中
while iter:MoveNext() do
    local currentMail = iter.Current
end

这里相当于使用 foreach currenMail in mails。

参考资料:
tolua#的Examples-09_Dictionary

你可能感兴趣的:(游戏开发)