在VS中 使用C#访问Lua

举报
陈言必行 发表于 2021/08/14 00:22:19 2021/08/14
5.5k+ 0 0
【摘要】 创建VS程序集,然后添加引用LuaInterface.dll文件,(选中引用,右键添加引用,然后浏览到LuaInterface.dll的目录,选择添加就可以了),,,而后将luanet.dll文件复制粘贴到,程序集的Debug的目录下,最后创建在vs中使用lua脚本(我这里是test.lua文件) 完成情况如图: using System; using LuaI...

创建VS程序集,然后添加引用LuaInterface.dll文件,(选中引用,右键添加引用,然后浏览到LuaInterface.dll的目录,选择添加就可以了),,,而后将luanet.dll文件复制粘贴到,程序集的Debug的目录下,最后创建在vs中使用lua脚本(我这里是test.lua文件)

完成情况如图:
文件目录

using System;
using LuaInterface; //添加引用,并应用命名空间

namespace LuaInterfaceDemo
{ class Program { static void Main(string[] args) { //C# 中创建lua对象 Lua lua1 = new Lua(); lua1["num"] = 100; //创建lua的变量 double temp = (double)lua1["num"]; //使用C# 变量接收lua变量, //打印输出,证明可以访问到lua 变量 Console.WriteLine(temp); //C# 访问lua文件,,,注意lua文件要在c#程序集的Debug的目录下,, Lua lua2 = new Lua(); lua2.DoFile("test.lua"); //C#访问lua字符串 Lua lua3 = new Lua(); //注意语法一定不要有错, string luaStr = "num = 1 function add(num1, num2) return num1 + num2 end temp = add(num, num)print(temp)"; lua3.DoString(luaStr); Console.ReadKey(); } }
}

  
 

上面代码的运行结果:
运行结果

Lua和C#相对应的类型

Lua中 C#中
nil null
string System.String
number System.Double
boolean System.Boolean
table LuaInterface.LuaTable
function LuaInterface.LuaFunction

文章来源: czhenya.blog.csdn.net,作者:陈言必行,版权归原作者所有,如需转载,请联系作者。

原文链接:czhenya.blog.csdn.net/article/details/78401821

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

作者其他文章

评论(0

抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。