lua 例子】的更多相关文章

//顶 - - - //顶 #include <stdio.h> #include <string.h> extern "C"{ #include <lua.h> #include <lauxlib.h> #include <lualib.h> } #pragma comment(lib,"lua.lib") void stackDump(lua_State* L) { int i; int top = l…
#include <stdio.h> extern "C" { #include "lua-5.2.2/src/lauxlib.h" #include "lua-5.2.2/src/lualib.h" #include "lua-5.2.2/src/lstate.h" } //lua与c交互栈的索引,假如栈中有5个元素 //5 -1 //4 -2 //3 -3 //2 -4 //1 -5 void stackDum…
#include <stdio.h> #define MAX_COLOR 255 extern "C" { #include "lua-5.2.2/src/lauxlib.h" #include "lua-5.2.2/src/lualib.h" #include "lua-5.2.2/src/lstate.h" } int getfield(const char* key, lua_State* L) { ; lu…
分离构造和使用 构造含义是功能的实现, 此功能是一个定义明确的处理过程, 开放出明确的接口给调用者使用. 则使用者可以直接调用接口进行使用, 但是使用者需要搞清楚, 那些是构造, 那些是使用. 不要再使用的地方, 将构造的代码也实现. 否则, 构造的代码会淹没掉 使用地方的 业务逻辑. LUA需求 在一个lua表中, 查询指定参数名称的参数值,  并将此参数值转换为 html encode编码方式. instData = { ["para"] = "paravalue<…
//test.c #include <stdio.h> #include "lua.h" #include "lualib.h" #include "lauxlib.h" #include <stdlib.h> lua_State *L; int main(){ L = luaL_newstate();//创建state以及加载标准库 luaL_openlibs(L);//打开所有lua标准库加入到已经创建的state l…
简介 LTUI是一个基于lua的跨平台字符终端UI界面库. 此框架源于xmake中图形化菜单配置的需求,类似linux kernel的menuconf去配置编译参数,因此基于curses和lua实现了一整套跨平台的字符终端ui库. 而样式风格基本上完全参照的kconfig-frontends,当然用户也可以自己定制不同的ui风格. 安装 $ luarocks install ltui 编译 我们需要先安装跨平台构建工具:xmake $ xmake 运行测试 你需要先安装lua或者luajit程序…
3.x的引擎目录与2.x的引擎目录的差别是非常大的.3.x主要是将引擎的各个文件按照用途进行了分类,使得引擎目录结构更加清晰了. 从目录中我们主要了解一下以下几个文件: 文件名 说明 build 官方编译的项目解决方案. 集中放在这个文件中,如cocos2d-win32.vc2012.sln.Debug.win32.win32-msvc-2012-x86.cmd等. 这些在2.x版本是直接放在根目录的. cocos 集中了cocos2dx开发中使用的所有源文件. 除了cocos2dx引擎核心部分…
在绝大多数情况下,我们都不会用到rawget和rawset. 本文的运行环境:lua 5.3 for windows rawset 赋值操作 rawset是在设置值的过程,进行处理,比如:当某个值改变时,触发事件.或修改某个key为新值. 来看看rawset函数的定义 --- Sets the real value of `table[index]` to `value`, without invoking the --- `__newindex` metamethod. `table` mus…
1.Lua面向对象实现步骤 ①创建一个全局表(称之为元表) ②设置这个元表的__index值(值通常为元表自己,这样就能通过__index查找到对应的属性和方法) __index 赋值其实是一个function的语法糖,Sharp.__index = Sharp等价于Sharp.__index = function(key) return Sharp[key] end ③新建一个表,使用setmetatable方法将元表设置到这个新表中,那这个新表就能以对象的方式来调用对应的属性和方法了 当这个…
参考:https://eliasdaler.wordpress.com/tag/luabridge/ https://eliasdaler.wordpress.com/2015/08/10/using-lua-and-cpp-in-practice/ 1. ECS和基本原理介绍 本译文主要说明以下几点: 实体的创建和其他基本的东西(你正在阅读这篇文章了) 如何实现实体的创建 Lua状态管理和清理 脚本状态机 事件和回调 先看看c++代码创建实体: Entity e; auto gc = new…