手机版
热门标签
站点地图
我要投稿
广告合作
联系我们
搜 索
广告位招租
广告位招租
切换导航
首页
编程教程
编程导航
编程百科
编程问答
编程博文
编程实例
硬件设备
网络运营
软件教程
移动数码
办公软件
操作系统
人工智能
栏目导航
▸ 编程语言
▸ 前端开发
▸ 移动开发
▸ 开发工具
▸ 程序设计
▸ 行业应用
▸ CMS系统
▸ 服务器
▸ 数据库
公众号推荐
微信公众号搜
"智元新知"
关注
微信扫一扫可直接关注哦!
子栏目导航
PHP
Java
Java SE
Python
NumPy
C#
C&C++
Ruby
VB
asp.Net
Go
Perl
netty
gRPC
Django
Delphi
Jsp
.NET Core
Spring
Flask
Springboot
SpringMVC
Spring Cloud
Lua
fastadmin
Laravel
Mybatis
Asp
Groovy
ThinkPHP
Yii
swoole
编程之家
Lua
lua table 基本使用
table在Lua中唯一的数据结构,其它语言提供的各种数据结构Lua都是用table来实现的 。下面是一个C API操作table的例子。 #include <stdio.h> #include "lua.h" #include "lauxlib.h" #include "lualib.h" int main() { lua_State *L; L = luaL_
作者:编程之家 时间:2020-08-19
lua元表学习
元表(metatable)是 Lua 里每种类型的值的默认操作方式的集合,例如,数字可以加减乘除、字符串可以连接合并、table 可以插入一对 key-value 值、函数可以被调用等等,这些操作都遵循其预定义的行为来执行。 而值的默认操作方式不是一成不变的,可以通过元表来修改其行为表现,或者是新定义一些默认没有的操作。例如,当两个 table 相加时, Lua 会检查它们之间的元表里是否有 "_
作者:编程之家 时间:2020-08-19
Lua代码规范
如题;
作者:编程之家 时间:2020-08-19
Lua语言中pairs和ipairs的区别
tbl = {"A", "B", ["one"] = "C", ["two"] = "D"} for k, v in pairs(tbl) do print(key, value) end -pairs()函数基本和ipairs()函数用法相同, 区别在于: pairs()可以遍历整个table,即包括数组及非数组部分。 -->如有pairs迭代输出如下: -->1 A -->2
作者:编程之家 时间:2020-08-19
【深入Lua】理解Lua中最强大的特性-coroutine协程
点击进入我的新博客 ###coroutine基础 Lua所支持的协程全称被称作协同式多线程(collaborative multithreading)。Lua为每个coroutine提供一个独立的运行线路。然而和多线程不同的地方就是,coroutine只有在显式调用yield函数后才被挂起,同一时间内只有一个协程正在运行。 Lua将它的协程函数都放进了coroutine这个表里,其中主要的函数如下
作者:编程之家 时间:2020-08-19
Lua 语言 15 分钟快速入门
from:http://www.oschina.net/translate/learn-lua-in-15-minutes origin:http://tylerneylon.com/a/learn-lua/ -- 两个横线开始单行的注释 --[[ 加上两个[和]表示 多行的注释。 --]] -----------------------------------------
作者:编程之家 时间:2020-08-19
Lua常用函数
点击打开链接 table 一部分的table函数只对其数组部分产生影响, 而另一部分则对整个table均产生影响. 下面会分开说明. table.concat(table, sep, start, end) concat是concatenate(连锁, 连接)的缩写. table.concat()函数列出参数中指定table的数组部分从start位置到end位置的所有元素, 元素间以指定的分隔符(
作者:编程之家 时间:2020-08-19
Lua的内存监测和回收
Lua内存是自动收集的, 这点跟Java类似, 不被任何对象或全局变量引用的数据,将被首先标记为回收,不需要开发者做任何事情.但是,正如Java也会有内存泄露一样, Lua也会有, 只不过,跟C++的不同,它是由于代码执行所装载的资源,并没有被彻底销毁而导致,其中,最臭名昭著的就是不小心把局部变量声明成了全局变量(忘了加local修饰符)。 类似这样造成的内存泄露, 跟任何其他语言的内存泄露一样,
作者:编程之家 时间:2020-08-19
以自定义方式加载 lua 模块
今天我们的一个小项目开始做内部测试发布前的资源打包。这个项目基本上是用 lua 做开发的。整个开发过程中,我们的代码是直接把 Lua 源代码放在项目的发布目录下的。发布版因为安全或是整洁等种种原因,我们必须给所有的脚本代码打包。 这种事情以前在大话2 里也干过,当时用的 lua 4.0 而且也没多少经验,我们是直接去修改的 lua 的代码,适应我们的打包格式。这次,不想这么干了。希望能够完全不动
作者:编程之家 时间:2020-08-19
lua学习
学习教程:《Programming in Lua》作者:Roberto Ierusalimschy 编辑工具:LuaForWindows_v5.1.4-46.exe 掌握技能: 1.lua 语法。 2.lua 与 C/C++的相互调用。 3.lua 嵌套到项目中。 4.lua 源码剖析。
作者:编程之家 时间:2020-08-19
lua笔记
lua 先按照官网安装好lua解释器, 下载源码编译也很简单,下载地址:http://www.lua.org/download.html lua类型 lua是动态类型语言,变量无须定义 Numbers: 包括整数,无精度限制整数,单精度浮点数,双精度浮点数,复数 >a = 1 >b = a*10 >print(b) >c = 0.7 >print(c) 字符和数字转换: > = tonumber
作者:编程之家 时间:2020-08-19
lua 中pairs 和 ipairs区别
lua 中pairs 和 ipairs区别 分类: Lua 2012-05-11 11:13 7150人阅读 评论(5) 收藏 举报 lua iterator integer table function dos 目录(?)[+] ipairs t pairs t lua 中pairs 和 ipairs区别 标准库提供了集中迭代器,包括迭代文件每
作者:编程之家 时间:2020-08-19
浅析Lua中table的遍历
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。 http://www.voidcn.com/article/p-tqpllulr-ca.html 当我在工作中使用lua进行开发时,发现在lua中有4种方式遍历一个table,当然,从本质上来说其实都一样,只是形式不同,这四种方式分别是: for key, val
作者:编程之家 时间:2020-08-19
Lua脚本学习笔记
Lua脚本是由巴西一位教授开发用来嵌入应用程序的脚本语言。用标准的C语言编写,大小约为200KB。 应用程序通过加入Lua的lua5.dll动态链接库来嵌入该脚本。该脚本相比其他脚本语言如Python,perl具有更加轻量的优势,执行速度快,语法简单的特点。 该脚本拥有丰富的API接口。 使用的服务有Wing FTP Server服务界面如下 Lua的二
作者:编程之家 时间:2020-08-19
Lua基础教程
原文地址:http://coolshell.cn/articles/10739.html 这几天系统地学习了一下Lua这个脚本语言,Lua脚本是一个很轻量级的脚本,也是号称性能最高的脚本,用在很多需要性能的地方,比如:游戏脚本,nginx,wireshark的脚本,当你把他的源码下下来编译后,你会发现解释器居然不到200k,这是多么地变态啊(/bin/sh都要1M,
作者:编程之家 时间:2020-08-19
lua笔记
lua的精简在今天算是一个比较深的体会。像字符串的表示,lua可以用单引号或者双引号或者是“[[]]”来表示。 在刚学的时候特意去区分了a.key和a[key]的区别,lua程序设计里面讲到这是一种语法糖。今天自己在处理table数据的时候,为了判断键值不断的使用if语句。只因为自己习惯了键值定义为数字,忘记了在lua中a.key==a[key]。
作者:编程之家 时间:2020-08-19
lua 热更新
热更新主要用于不停机修复bug等。故其重点是更新逻辑代码。 切记模块设计时,分为数据和逻辑。 1、所有脚本文件,除了入口的文件外,其他都写成module形式; 2、模块中不要有文件内的local变量,目前未知此种变量存到哪里了,local修饰的函数无所谓; 3、所有的数据部分直接存到_G.game_instance.xxx中,然后直接重新load初始化入口文件,并卸载所有的脚本文件,就会触发重新加
作者:编程之家 时间:2020-08-19
Lua中的字符串函数库
Lua解释器对字符串的支持很有限。一个程序可以创建字符串并连接字符串,但不能截取子串,检查字符串的大小,检测字符串的内容。在Lua中操纵字符串的功能基本来自于string库。 字符串库中的一些函数是非常简单的: string.len(s) 返回字符串s的长度; string.rep(s, n) 返回重复n次字符串s的串;你使用string.rep("a", 2^20)可
作者:编程之家 时间:2020-08-19
lua实现继承
lua本身没有像C++一样的继承功能 但是我们可以自己实现一个类似C++的继承功能 书本也有详细介绍,不过读起来确实费解,所以本人自己写了一个简单的继承,一目了然,用来学习很容易入手 完整代码 -- 基类 People = {} function People:new(o) o = o or {} setmetatable(o, self) self.__index = self return o
作者:编程之家 时间:2020-08-19
lua与C/C++的交互
基于VS的LUA源码,地址为http://luabinaries.luaforge.net/download.html lua作为小巧精悍的脚本语言,易于嵌入c/c++中 , 广泛应用于游戏AI ,实际上在任何经常变化的逻辑上都可以使用lua实现,配合c/c++实现的底层接口服务,能够大大降低系统的维护成本。下面对lua和c/c++的交互调用做一个实例分析: lua提供了API用于在c/c++中构
作者:编程之家 时间:2020-08-19
lua元表
前几天自己转载了一篇文章“lua,让人惊叹的艺术”。里面对lua的解析个人感觉很精辟。文中也讲到了元表。在我看了,元表本身也是一张普通的表,但是它带有特殊的回调事件。当我们把一个表添加一些方法,通过setmettatable,把方法设置到某个对象,进而影响这个对象的行为和方法。于此实现了运算符的重载,在进行相关操作的时候,如“+”,lua会自动解析。通过元表,我们也可以实现OOP编程。这一方面自己
作者:编程之家 时间:2020-08-19
lua学习笔记
一直都用lua,但其实很多细节并没掌握好啊,今天总结一下。 lua中的实例:当你使用lua模拟类的实例的时候,特别要注意变量的初始化。如果初始化是在一开始,那么 它就是静态变量,为所有类共享。 例如: union = { data = {}, } function union:new(o) o = o or {} setmetata
作者:编程之家 时间:2020-08-19
Lua 标准库 - 输入输出处理(input and output facilities)
1、io表调用方式:使用io表,io.open将返回指定文件的描述,并且所有的操作将围绕这个文件描述 io表同样提供三种预定义的文件描述io.stdin,io.stdout,io.stderr 2、文件句柄直接调用方式,即使用file:XXX()函数方式进行操作,其中file为io.open()返回的文件句柄 多数I/O函数调用失败时返回nil加错误信息,有些函数成功时返回nil
作者:编程之家 时间:2020-08-19
Lua 全局变量
全局变量不需要声明。只需要将一个值赋予一个全局变量就可以创建了。访问一个未初始化的变量不会引发错误,访问结果是一个特殊的值nil。 print(b) ànil b=10 print(b) ->nil 如果一定要删除某个全局变量的话,只需要将其赋值为nil: b=nil print(b)
作者:编程之家 时间:2020-08-19
Lua性能优化技巧
前言 和在所有其他编程语言中一样,在Lua中,我们依然应当遵循下述两条有关程序优化的箴言: 原则1:不要做优化。 原则2:暂时不要做优化(对专家而言)。 这两条原则对于Lua编程来说尤其有意义,Lua正是因其性能而在脚本语言中鹤立鸡群。 当然,我们都知道性能是编程中要考量的一个重要因素,指数级时间复杂度的算法会被认为是棘手的问题,绝非偶然。如果计算结果来得太迟,它就是无用的结果。因此,每一个优
作者:编程之家 时间:2020-08-19
lua和c/c++互相调用实例分析
(转载)lua和c/c++互相调用实例分析 http://www.cppblog.com/lxyfirst/archive/2008/10/29/65447.html lua作为小巧精悍的脚本语言,易于嵌入c/c++中 , 广泛应用于游戏AI ,实际上在任何经常变化的逻辑上都可以使用lua实现,配合c/c++实现的底层接口服务,能够大大降低系统的维护成本。下面对lua和c/c++的交互调用做
作者:编程之家 时间:2020-08-19
Lua 与 C 交互(1)
Lua 与 C 交互(1) lua_newtable void lua_newtable (lua_State *L); 创建一个空 table ,并将之压入堆栈。 它等价于 lua_createtable(L, 0, 0) 。 lua_gettop int lua_gettop (lua_State *L); 返回栈顶元素的索引。 因为索引是从 1 开始编号的, 所以这个结果等于堆栈上的元素
作者:编程之家 时间:2020-08-19
lua元表
lua元表 本文简译自一篇老外的博客,写得不错可惜我翻译的太烂,简译如下。 (key--value常见翻译为“键值对”,我翻译为索引、值) 在这篇教程里我会介绍Lua中一个重要的概念: metatable(元表),掌握元表可以让你更有效的 使用Lua。 每一个tabel都可以附加元表, 元表是带有索引集合的表,它可以改变被附加表的行为。 看下例: t = {} -- 普通表 mt = {} --
作者:编程之家 时间:2020-08-19
关于lua的闭包Closure和Upvalue
关于lua的闭包(Closure)和Upvalue upvalue:嵌套函数的外部函数的局部变量 function func(a) <== 这个函数返回值是一个函数 return function () a = a + 1 <== 这里可以访问外部函数func的局部变量a,这个变量a就是upvalue return a end end func返回一个匿名函数,可用变量接取
作者:编程之家 时间:2020-08-19
Lua使用C++中的类——调用类方法并访问类变量
Lua使用C++中的类——调用类方法并访问类变量 xxNull 2013-04-18 11:21 { lua_pushnumber(L, pT->m_x); } else if (strcmp(lua_tostring(L, 2), "Add") == 0) { lua_pushcfunction(L, CallAdd); } else { return 0; } return 1; } sta
作者:编程之家 时间:2020-08-19
上一页
21
22
23
24
25
26
27
28
下一页
小编推荐
热门标签
更多
python
JavaScript
java
HTML
reactjs
C#
Android
CSS
Node.js
sql
r
python-3.x
MysqL
jQuery
c++
pandas
Flutter
angular
IOS
django
linux
swift
typescript
路由器
JSON
路由器设置
无线路由器
h3c
华三
华三路由器设置
华三路由器
电脑软件教程
arrays
docker
软件图文教程
C
vue.js
laravel
spring-boot
react-native