C++嵌入Lua读取配置文件
2011-12-28 12:36
561 查看
这段时间一直在写工具,遇到一些问题,Google下解决了,这里想把解决问题的成果提取出来分享下,也方便我以后使用,^_^
写工具就应该尽量的灵活,可配置性强,配置文件是少不了的。
之前用过自定义配置文件(我的另一篇文章中提到过:/article/4903359.html),灵活是灵活,可写起来有点麻烦,而且如果想把部分逻辑写在外面,在配置文件中弄个函数就很不随意了——自己要写个脚本引擎进行解析……
最后决定用lua作为配置文件的解析器,这里有个简单的demo:
另外,我自己写了个C++调用Lua的类,感兴趣的话,可以到这里去找:
项目地址:http://sourceforge.net/projects/cppcalllua/
svn访问:svn checkout http://svn.code.sf.net/p/cppcalllua/code-0/trunk cppcalllua-code-0
Tips : 这是一个CodeBlocks的工程,工程文件 : CppCallLua.cbp
写工具就应该尽量的灵活,可配置性强,配置文件是少不了的。
之前用过自定义配置文件(我的另一篇文章中提到过:/article/4903359.html),灵活是灵活,可写起来有点麻烦,而且如果想把部分逻辑写在外面,在配置文件中弄个函数就很不随意了——自己要写个脚本引擎进行解析……
最后决定用lua作为配置文件的解析器,这里有个简单的demo:
/* File : demo.cpp Author : Mike E-Mail : Mike_Zhang@live.com */ #include <stdio.h> extern "C" { #include "lua.h" #include "lualib.h" #include "lauxlib.h" } lua_State *L; const char *lua_Script = "function add(a, b) return (a+b) end "; int lua_add(lua_State *L, const char *fun_name, int x, int y) { int ret; lua_getglobal(L, fun_name); lua_pushnumber(L, x); lua_pushnumber(L, y); lua_call(L, 2, 1); ret = (int)lua_tointeger(L, -1); lua_pop(L, 1); return ret; } int test() { int ret = 0; lua_State *L = lua_open(); /* opens Lua */ luaL_openlibs(L); if (luaL_dostring(L, lua_Script)) // Run lua script { printf("error!\n"); lua_close(L); return -1; } ret = lua_add(L, "add", 4, 5); printf("%d\n",ret); lua_close(L); return 0; } int main() { test(); return 0; }
另外,我自己写了个C++调用Lua的类,感兴趣的话,可以到这里去找:
项目地址:http://sourceforge.net/projects/cppcalllua/
svn访问:svn checkout http://svn.code.sf.net/p/cppcalllua/code-0/trunk cppcalllua-code-0
Tips : 这是一个CodeBlocks的工程,工程文件 : CppCallLua.cbp
相关文章推荐
- C++嵌入Lua读取配置文件
- 关于C++读取Lua配置文件实现案例
- C++调用Lua读取配置文件的一个简单例子
- 【C/C++】C语言读取简单配置文件
- windows下,c /c++实现磁盘扫描,结合配置文件,读取特定后缀文件目录代码
- C++中调用Lua配置文件和响应函数示例
- Lua与C/C++的交互3:C/C++中读取Lua文件中的表
- c/c++: 读取配置文件(文本)内容的简单实现
- linux 进阶2--C++读取lua文件中的变量、一维表、二维表
- C++读取配置文件内中的数组
- [转]C++编写Config类读取配置文件
- windows下,c /c++实现磁盘扫描,结合配置文件,读取特定后缀文件目录代码
- c++ MFC 读取ini配置文件
- C++读取配置文件
- C++编写Config类读取配置文件
- Lua与C/C++的交互2:C/C++中读取Lua文件
- C++读取、写入配置文件
- [C++基础]一个比较常用的配置文件/初始化文件读取程序
- 配置文件读取的简要C/C++代码
- C++编写Config类读取配置文件2