当前位置: 首页 > wzjs >正文

有哪些外贸公司网站做的比较好东莞网络推广及优化

有哪些外贸公司网站做的比较好,东莞网络推广及优化,信阳网站开发公司电话,建德网站建设公司先引入XLua文件中的Plugins和XLua文件夹于Unity项目的Asset文件中 XLua_github链接 建立Lua虚拟机:LuaEnv luaEnv new LuaEnv(); 关闭虚拟机,及时释放资源:luaEnv.Dispose(); Resources文件夹下加载lua文件(假设文件路径为Resour…
先引入XLua文件中的Plugins和XLua文件夹于Unity项目的Asset文件中

XLua_github链接

建立Lua虚拟机:LuaEnv luaEnv = new LuaEnv();

关闭虚拟机,及时释放资源:luaEnv.Dispose();

Resources文件夹下加载lua文件(假设文件路径为Resources/Lua/test.lua.text):

luaEnv.DoString("require 'lua/test'");

加载自定义文件夹下的lua文件(假设文件路径为Asset/Lua/test.lua)

(a)编写加载Lua文件的加载器:

private byte[] LoadLua(ref string file)

{

string luaStr = File.ReadAllText(Application.dataPath + "/Lua/" + file + ".lua");

byte[] luaByte = new UTF8Encoding().GetBytes(luaStr);

return luaByte;

}

(b)为虚拟机添加Lua加载器:

luaEnv.AddLoader(LoadLua);

(c)运行lua文件:

luaEnv.DoString("require 'test'");

假设有test.lua:

a = 1

b = true

c = "你好嘛"

table1 = {"aa", "bb", "cc", "12", "23', true, false}

person =

{

name = "zhaoxi",

age = 18

}

function Add(a, b)

return a + b

end

function Get(a, b)

return a,b

end

获取lua文件的全局变量:

int:int a = luaEnv.Global.Get<int>("a");

bool:bool b = luaEnv.Global.Get<bool>("b");

string:string c = luaEnv.Global.Get<string>("c");

访问table的四种方式:

(1)值类型方式:

(1-1)类的形式访问:

(a)定义一个类Person:

public class Person

{

public string name;

public int age;

}

(b)获取lua数据:

Person person = luaEnv.Global.Get<Person>("person");

Debug.Log(person.name + person.age);

(1-2)Dictionary List的方式访问:

Dictionary<string, object> tableDic = luaEnv.Global.Get<Dictionary<string, object>>("person");

Debug.Log(tableDic["name"] + " " + tableDic["age"]);

List<Object> tableList = lua.Global.Get<List<object>>("table1");

Debug.Log(tableList[0].ToString());

(2)引用类型访问:

(2-1)接口访问:

(a)定义接口IPerson(需挂载[CSharpCallLua]):

[CSharpCallLua]

public interface IPerson

{

public string name{get; set;}

public int age{get; set;}

}

(b)接收来自Lua的数据:

IPerson iperson = luaEnv.Global.Get<IPerson>("person");

Debug.Log(iperson.name);

iperson.name = ''yeye'';//修改lua数据,但不会对原lua文件造成影响

luaEnv.DoString("print(person.name)");//打印为yeye

(2-2)LuaTable的方式访问(能够实现动态行为,减少编译时间,但是性能开销较大,且难以追踪问题还会报类型安全的错误等等):

LuaTable luaTable = luaEnv.Global.Get<LuaTable>("person");

Debug.Log(luaTable.Get<string>("name"));//打印"zhaoxi"

访问全局函数:

(1)使用委托访问(需在委托前挂载[CSharpCallLua])优点:调用直接、性能快但是灵活性差

(a)定义委托

[CSharpCallLua] public delegate int Add(int a, int b);

[CSharpCallLua] public delegate int Get(int a, int b, out int c);

(b)获取函数

Add addFunc = luaEnv.Global.Get<Add>("add");

addFunc(1, 2);

Get get = luaEnv.Global.Get<Get>("get");

int num1, num2;

num1 = get(1, 2, out num2);

Debug.Log(num1 + " " + num2);//num1 = 1, num2 = 2

(2)使用LuaFunction优点:灵活性高,减少C#与Lua的桥接代码

LuaFunction luaFunction = luaEnv.Global.Get<LuaFunction>("add");

LuaFunction luaFunction1 = luaEnv.Global.Get<LuaFunction>("get");

object[] obs = luaFuction.Call(1, 2);

object[] obs1 = luaFunction.Call(1, 2);

Debug.Log(obs[0]);//3

Debug.Log(obs[0] + " " + obs[1]);//1, 2

http://www.dtcms.com/wzjs/457539.html

相关文章:

  • 注册劳务公司需要多少钱seo应该如何做
  • 广州中小企业seo推广运营东莞优化排名公司
  • h5网站显示的图标怎么做怎么建网站平台卖东西
  • 服务器上构建企业网站哪些行业适合做网络推广
  • 国外建站用什么最多拉新平台哪个好佣金高
  • 网站开发课程学习关键词排名点击
  • 玉溪企业网站建设互联网推广广告
  • 网站开发技术html网页制作软件哪个好
  • 宜昌网站模板seo优化培训
  • 小程序appid如何获取seo推广方案
  • 兰州网站建设公司电话什么是百度推广
  • wap网站制作工具搜索优化引擎
  • 组织建设 湖南省直工会网站电商seo与sem是什么
  • WordPress搜索增强插件杭州seo排名
  • 相关网站查询推广普通话心得体会
  • 网站完整模板黑帽seo论坛
  • 微信 网站应用开发网站开发
  • wordpress开启子站谷歌外贸网站推广
  • 彩票网站怎么做赚钱吗竞价排名是什么意思
  • 建网站排名点击器免费版
  • 银川网站建设nx110百度网盘app手机版
  • 生物信息网站建设什么是seo搜索引擎优化
  • 户外媒体网站建设免费网站内容优化怎么去优化呢
  • 网上注册公司在哪个平台注册郑州百度关键词seo
  • 合伙做网站丈哥seo博客工具
  • 新办公司流程及资料优化大师卸载不了
  • 南通市建设局网站马建明搜狗营销
  • 网站建设 java域名注册服务网站查询
  • 怎么做区块链网站百度视频免费高清影视
  • 网站开发的三层架构网站发布与推广方式