【Lua】访问C#中的属性和方法-特殊情况-带有out和ref关键字

来源:互联网 发布:ios禁止软件联网 编辑:程序博客网 时间:2024/04/30 07:17
using System;using LuaInterface;namespace myLua{class MainClass{public string name = "Ocean";public void CSharpMethod(string name ,out int count){Console.WriteLine ("这是C#里的一个方法");count = name.Length;}public void TestRef(string name,ref int count){Console.WriteLine (name);Console.WriteLine (count);count = name.Length;}public static void Main (string[] args){// 创建一个Lua解释器                        Lua lua = new Lua();                        // 在C#中使用lua的语法调用lua脚本                        lua.DoFile("luaScript.lua");                              }      }}
luaScript.lua--引入一个luanet库,引入之后就可以使用这个库里面的所有方法了require "luanet"--加载C#里面的namespace是myLua的动态链接库(DLL)luanet.load_assembly("myLua")--引入链接库里面的MainClass类,我们给它自定义的名字是MainClasssMainClass = luanet.import_type("myLua.MainClass")myClass = MainClass()print(myClass.name)returnValue,strLength = myClass:CSharpMethod("Ocean")print(returnValue, strLength)--returnValue是方法的返回值,如果没有返回值就返回nilreturnValue,count = myClass:TestRef("Ocean",5)


0 0
原创粉丝点击