随笔分类 -  lua基础

摘要:| # Lua 与 C++ 交互 | | | | ## 提供系统级别Lua API | | | | 提供系统级别API需要对Lua源码进行修改 | | | | ### Lua源码编译 | | | | [LuaResourceCode]:https://github.com/lua/lua "lua源 阅读全文
posted @ 2021-07-18 22:55 gd_沐辰 阅读(118) 评论(0) 推荐(0) 编辑
摘要:--[[local g = require 'library.global'--__ml_ss = mlc.prefix.ml_psession..tostring(os.time());local mlc = require 'ml_config' local function haslogin( 阅读全文
posted @ 2019-06-02 14:47 gd_沐辰 阅读(308) 评论(0) 推荐(0) 编辑
摘要:time和date两个函数在Lua中实现所有的时钟查询功能。函数time在没有参数时返回当前时钟的数值。 t=os.date()print(t) 05/07/19 16:49:18 curtime=os.time()temp = os.date("%x", curtime)print(temp) 0 阅读全文
posted @ 2019-06-02 14:46 gd_沐辰 阅读(202) 评论(0) 推荐(0) 编辑
摘要:json是键值对,在Lua中类型是string 主要运用在table中。表:local t={a="1",b="2",c="3",d="4",e="5"}json:'{a:"1",b:"2",c:"3",d:"4",e:"5"}' table转化成jsonjs=cj.encode(t) json转化 阅读全文
posted @ 2019-06-02 14:45 gd_沐辰 阅读(3996) 评论(0) 推荐(0) 编辑
摘要:1. 基础库 我们在整个教程中使用了各种主题下的基本库。 下表提供了相关页面的链接,并列出了本Lua教程各部分所涵盖的功能。 编号 库/方法 作用 1 错误处理 包括错误处理函数,如断言, 错误,如Lua错误处理中所述。 2 内存管理 包括与垃圾收集相关的自动内存管理功能, 如Lua垃圾收集中所述。 阅读全文
posted @ 2019-06-02 14:40 gd_沐辰 阅读(1260) 评论(0) 推荐(0) 编辑
摘要:Lua类=元表元方法+元表的数据结构 Lua面向对象 可使用Lua的表和第一类函数在Lua中实现面向对象。 通过将函数和相关数据放入表中,形成对象。可使用元表实现继承,为父对象中不存在的函数(方法)和字段提供查找机制。 Lua中的表具有状态和标识等对象的特征,与其值无关。 具有相同值的两个对象(表) 阅读全文
posted @ 2019-06-02 14:38 gd_沐辰 阅读(170) 评论(0) 推荐(0) 编辑
摘要:jsoncpp 主要包含三个class:Value、Reader、Writer。注意Json::Value 只能处理 ANSI 类型的字符串,如果 C++ 程序是用 Unicode 编码的,最好加一个 Adapt 类来适配。 Json内部类和方法: Reader<是用于读取的,说的确切点,是用于将字 阅读全文
posted @ 2019-06-02 14:37 gd_沐辰 阅读(1229) 评论(0) 推荐(0) 编辑
摘要:示例 例子,实现https方式,登录网站,访问某个网页,修改其中参数的功能。其中xx应用时候需要修改。 require("curl") local ipList = { "192.168.1.1", "192.168.1.1", } --登陆function loginWeb(ip) c = cur 阅读全文
posted @ 2019-06-02 14:36 gd_沐辰 阅读(3673) 评论(0) 推荐(0) 编辑
摘要:.cpp //若没有在项目属性--库文件、依赖文件、包含添加。则添加一下路径 #pragma comment (lib,"lua5.1.lib") #include "stdafx.h" #include "lua.hpp" extern "C" { #include "lua.h" #includ 阅读全文
posted @ 2019-06-02 14:35 gd_沐辰 阅读(3700) 评论(0) 推荐(0) 编辑
摘要:错误处理非常关键,因为实际操作通常需要使用复杂的操作,包括文件操作,数据库事务和Web服务调用。 在任何编程中,总是需要错误处理。 错误可以是两种类型,它们包括 - 语法错误运行时错误 1. 语法错误由于不正确地使用各种程序组件(如运算符和表达式),从而发生语法错误。 语法错误的一个简单示例如下所示 阅读全文
posted @ 2019-06-02 14:34 gd_沐辰 阅读(360) 评论(0) 推荐(0) 编辑
摘要:例子:将test表中的偶数移除掉 local test = { 2, 3, 4, 8, 9, 100, 20, 13, 15, 7, 11} for i, v in ipairs( test ) do if v % 2 == 0 then table.remove(test, i) end end 阅读全文
posted @ 2019-06-02 14:34 gd_沐辰 阅读(751) 评论(0) 推荐(0) 编辑
摘要:I/O库用于读取和操作Lua中的文件。 Lua中有两种文件操作,即隐式文件描述符和显式文件描述符。 对于以下示例,将使用示例文件 - test.lua,内容如下所示 - -- sample test.lua -- sample2 test.lua Lua 文件打开操作使用以下语句 - file = 阅读全文
posted @ 2019-06-02 14:33 gd_沐辰 阅读(478) 评论(0) 推荐(0) 编辑
摘要:(1)lua程序 (2)C++程序(头文件) (3)C++程序(.cpp文件) (4)C++程序(main文件) 注:程序中的注释已经很详尽,这里不在对代码进行解释。下载安装lua之后,在vs2010中还要引入相应的库。截图如下: 阅读全文
posted @ 2019-06-02 14:25 gd_沐辰 阅读(724) 评论(0) 推荐(0) 编辑
摘要:Lua与C的交互 Lua是一个嵌入式的语言,它不仅可以是一个独立运行的程序,也可以是一个用来嵌入其它应用的程序库。 C API是一个C代码与Lua进行交互的函数集,它由以下几部分构成: 1、 读写Lua全局变量的函数; 2、 调用Lua函数的函数; 3、 运行Lua代码片段的函数; 4、 注册C函数 阅读全文
posted @ 2019-06-02 14:20 gd_沐辰 阅读(4994) 评论(0) 推荐(1) 编辑
摘要:Lua字符串库小集 1. 基础字符串函数: 字符串库中有一些函数非常简单,如: 1). string.len(s) 返回字符串s的长度; 2). string.rep(s,n) 返回字符串s重复n次的结果; 3). string.lower(s) 返回s的副本,其中所有的大写都被转换为了小写形式,其 阅读全文
posted @ 2019-06-02 14:13 gd_沐辰 阅读(717) 评论(0) 推荐(0) 编辑
摘要:元表操作: setmetatable(table, metatable) getmetatable(table) 元方法操作: metatable.元方法 = function (可接受参数) (函数体) end 元方法: 算数运算符:__add(加法)[+]、__mul(乘法)[*]、__sub( 阅读全文
posted @ 2019-06-02 14:11 gd_沐辰 阅读(330) 评论(0) 推荐(0) 编辑
摘要:局部定义与代码块: 使用local声明一个局部变量或局部函数,局部对象只在被声明的那个代码块中有效。 代码块:一个控制结构、一个函数体、一个chunk(一个文件或文本串)(Lua把chunk当做函数处理) 这样,可以在chunk内部声明局部函数,该函数仅在chunk内可见,并且词法定界保证了包内其他 阅读全文
posted @ 2019-06-02 14:05 gd_沐辰 阅读(202) 评论(0) 推荐(0) 编辑
摘要:Lua 模块与包 模块类似于一个封装库,从 Lua 5.1 开始,Lua 加入了标准的模块管理机制,可以把一些公用的代码放在一个文件里,以 API 接口的形式在其他地方调用,有利于代码的重用和降低代码耦合度。 Lua 的模块是由变量、函数等已知元素组成的 table,因此创建一个模块很简单,就是创建 阅读全文
posted @ 2019-06-02 14:01 gd_沐辰 阅读(182) 评论(0) 推荐(0) 编辑
摘要:table.sort() 原型:table.sort (table [, comp]) 解释:对一个长度为length=n的数组table排序,也就是对tab_table[1]到tab_table[n]排序,如果参数comp不省略,则它必须是一个函数,可以接收表tab_table的两个元素,并且在第 阅读全文
posted @ 2019-06-02 13:59 gd_沐辰 阅读(1862) 评论(0) 推荐(0) 编辑
摘要:Lua 迭代器 迭代器(iterator)是一种对象,它能够用来遍历标准模板库容器中的部分或全部元素,每个迭代器对象代表容器中的确定的地址 在Lua中迭代器是一种支持指针类型的结构,它可以遍历集合的每一个元素。 泛型 for 迭代器 泛型 for 在自己内部保存迭代函数,实际上它保存三个值:迭代函数 阅读全文
posted @ 2019-06-02 13:58 gd_沐辰 阅读(153) 评论(0) 推荐(0) 编辑