xLua学习(一)
来源:互联网 发布:淘宝联盟qq推广设置 编辑:程序博客网 时间:2024/04/28 01:05
xLua作为企鹅这个大厂开源出来的unity热更新技术,从面世就受到了广泛的关注,他的“开发使用C#,运行使用C#,有bug了下发Lua补丁替代”让我很感兴趣。非常适合比如已经开发大半使用C#开发的项目,若改为tolua等热更技术,费时又费力,而xLua则可以很好地打上标记,便可以在之后的项目中实现热更。这也是我看好xLua的原因。于是,就从零开始一点点踩坑吧。
这是我C#中的一个类型:
using UnityEngine;using XLua;using System;[LuaCallCSharp]public class TestModel : MonoBehaviour{ public int f1 = 2; public int f2 = 4; public void Show() { print("Lua Call CS 成功!"); } public void Show2(string s) { print(s); } public int Add(int a, int b) { print("ADD 成功!"); return a + b; } public void RefInt(ref int a) { a = 5; } public int RefIntReturn(ref int a) { a = 5; return 0; } public void OutInt(out int a) { a = 3; } public Action<string> m_delegate = (str) => { print("unity + " + str); };}
性,方法
访问成员属性和方法时,先要实例化类型local testModel=CS.TestModel()--获取对象testModel.f1=12 --设置成员属性local temp=testModel.f2 --读取成员属性testMode:Add(testModel.f1,temp)--成员方法xlua支持(通过派生类)访问基类的静态属性,静态方法,(通过派生类实例)访问基类的成员属性,成员方法。
ref和out关键字
local num=2--私有变量local result1=testModel:RefInt(2)print(result1)--result1为5
local num=2--私有变量result2=testModel:OutInt(2)print(result2)--result1为3复杂的方法
local num=2local result3,result4=testModel.RefIntReturn(num)print(result3)--第一个为return的返回值0print(result4)--第二个为ref的num=5
0 0
- xLua学习(一)
- Xlua入门案例一
- Xlua学习总结
- xLua的学习笔记
- Xlua
- [Unity XLua]热更新XLua入门(一)-基础篇
- 腾讯开源手游热更新方案Xlua尝鲜(一)
- xLua 简介
- UGUI的xlua例子
- FairyGUI导出XLua接口
- Xlua热补丁原理
- xLua Hello World
- xLua添加白名单
- xlua初步研究
- Xlua入门案例二
- Xlua入门案例四
- xLua的配置
- xlua 热更新
- Java工程Properties配置文件注释中文,会自动转换为其他编码方式问题解决
- myeclipse配置tomcat
- 一些有趣的异或运算
- 理解IOC
- symfony学习之简单路由处理
- xLua学习(一)
- 一些不错的博客
- 小品《非诚勿扰》第二季
- interllij idea for mac 安装
- C++ 串口通信
- JMeter接口压测
- DB2 状态码 57016 原因码 7 解决方案
- windows 安装多个版本的jdk后修改 环境变量不起作用
- 如何配置filezilla服务端和客户端