lua
文章平均质量分 70
xiaodaidabin
这个作者很懒,什么都没留下…
展开
-
详解如何把C++对象绑定到Lua轻量级
游戏中的使用脚本语言已经成为了一个标准应用。脚本语言能够在游戏开发中扮演一个重要的角色,并且让数据结构化,计划事件,测试和调试这些工作更加容易。脚本语言也能够允许像美术,策划这些非程序专家通过一个高层的抽象脚本来为游戏编写代码。这个抽象层的一部分也能够允许提供给玩家来定制整个游戏。从程序员的角度上来看,把一个脚本语言嵌入到游戏中最主要的问题是如果为脚本语言提供对宿主对象的访问(通常是C/C++转载 2012-09-10 09:21:23 · 990 阅读 · 0 评论 -
Lua中的table函数库
一部分的table函数只对其数组部分产生影响, 而另一部分则对整个table均产生影响. 下面会分开说明. table.concat(table, sep, start, end)concat是concatenate(连锁, 连接)的缩写. table.concat()函数列出参数中指定table的数组部分从start位置到end位置的所有元素, 元素间以指定的分隔符(sep)隔开。原创 2012-09-13 09:48:30 · 485 阅读 · 0 评论 -
lua table中判空
在项目的脚本lua中经常有这样的需求,1、local a = {}2、对a进行处理3、对a是否为空表进行判断关于对a是否为空表的判断,我发现有些代码如此做:if a == {} then这样的结果就是a == {}永远返回false,是一个逻辑错误。因为这里比较的是table a和一个匿名table的内存地址。也有些代码如此做:if table.maxn(a) ==转载 2012-09-13 09:34:05 · 5891 阅读 · 1 评论 -
lua中位运算操作
--[[Description: FileName:bit.lua This module provides a selection of bitwise operations.History: Initial version created by 阵雨 2005-11-10.Notes: ....]]--[[{2147483648,1073741824,5原创 2012-09-11 19:21:28 · 42831 阅读 · 2 评论 -
有用的lua学习网址
1、http://luaforge.net/projects/ (项目目录)2、http://www.lua.org/manual/5.2/manual.html#pdf-bit32.arshift (参考手册)3、http://lua-users.org/wiki/LuaDocumentation(lua users wiki)4、http://blog.codingnow.com原创 2012-09-11 19:19:35 · 1025 阅读 · 0 评论 -
lua中userdata
userdata这东西, 可以理解为用户自定义数据. 它是数据, 不是类型, 其实说白了, 就是一片内存. 通过一个简单的API, 我们就能获取一个userdata:view sourceprint?void *lua_newuserdata (lua_State *L, size_t size);这个API一目了然, 创建好的userdata会被妥善安置在lua stack的顶部.转载 2012-09-11 19:12:43 · 21378 阅读 · 1 评论 -
详解Lua环境搭建之利用EditPlus搭建Lua开发环境
Lua环境搭建之利用EditPlus搭建Lua开发环境是本文要介绍的内容,主要是来学习lua的环境搭建及开发环境的配置,具体内容的实现来看本文详解。一、语法高亮敞开 EditPlus,Tools工具,然后选择Preferences首选项,在选择setting & syntax语法点击右面的Add按钮添置一个文件种类,在下面的Descrīption栏里填写Lua,FIle extensi转载 2012-09-10 09:27:05 · 1383 阅读 · 0 评论 -
关于LUA程序设计对象序列化学习笔记
关于LUA程序设计对象序列化学习笔记是本文要介绍的内容,主要是来学习LUA中对象的序列化,具体内容的详解来看本文。通常需要序列化一些数据,也就是将数据转换为一个字节流或字符流,然后就可以将其方便的持久化。文本序列化可选择的格式非常多:SOAP、Json甚至自定义xml等,不过lua脚本也是一个不错的选择方案。本文在参考《Lua程序设计(第2版)》简体中文版 详解LUA脚本语言之数据文件原创 2012-09-10 13:31:27 · 503 阅读 · 0 评论 -
为lua构建沙盒环境
我们有时需要限制lua代码的运行环境,或者是让使用者不能访问到lua的一些全局函数.lua语言本身没有类似于C++, C#, Java那样的成员访问控制. 但lua提供了setfenv函数可以很灵活的处理各类权限问题废话不多说, 看代码 1: -- 创建沙盒 2: function SpawnSandBox( ) 3: 4: local转载 2012-09-10 15:31:57 · 3550 阅读 · 0 评论 -
lua虚拟机初始化
1. 创建lua虚拟机lua_State *lua_newstate (lua_Alloc f, void *ud)创建一个新的独立的lua虚拟机. 参数指定了内存分配策略及其参数, 注意, 让用户可以定制内存分配策略是十分有用的, 比如在游戏服务器端使用lua, 我做过一次统记lua在运行的时候会大量的分配大小小于128字节的内存块, 在这样的环境下, 使用lua原生的分配器就不太适合了转载 2012-09-10 15:18:28 · 868 阅读 · 0 评论 -
详解关于Lua栈介绍以及实例
关于Lua栈介绍以及实例是本文要介绍的内容,主要是栈在lua中如何使用,具体内容的实现来看本文详解。c++中载入lua的代码#include > //所需要的头文件 extern "C" { #include "include\lua.h" #include "include\lualib.h" #include "include\lauxlib.h" #pragma commen转载 2012-09-10 09:24:13 · 967 阅读 · 0 评论 -
lua注意事项
1。tonumber对于使用该函数,如果参数能被转换成数字的话,那么返回成功转换后的数字,否则返回nil,而不是02。tostring能将任何变量转换成字符串,当进行字符串相加的时候,想要保证百分百没有问题,那么每个变量加上tostring肯定有效3。字符串的问题lua中,字符串不是数组,如果需要取一个子字符串,那么需要用string.sub函数4。路径的问题转载 2013-03-07 17:32:43 · 806 阅读 · 0 评论