LuaTinker
来源:互联网 发布:百无一用是书生知乎 编辑:程序博客网 时间:2024/06/05 10:52
LuaTinker 的作者是Kwon-il Lee韩国人写的,最新的版本是0.2.C,这个C++ wrapper For Lua能够方便和
快捷与C/C++通信,LuaTinker参考了luabind和luaplus的特征写的,虽然没有bindlua和luaplus这本强大
和提供很多功能,LuaTinker的实现只有两个文件,但是LuaTinker提供的基本能够满足大部的要求,用户
还可以对它进一步的扩充,而且用于游戏上特为方便,以下是LuaTinker使用C++结构和类的例子:
01
// 一个基类
02
struct
base
03
{
04
base() {}
05
06
const
char
* is_base(){
return
"this is base"
; }
07
};
08
09
// 一个测试类
10
class
test :
public
base
11
{
12
public
:
13
test(
int
val) : _test(val) {}
14
~test() {}
15
16
const
char
* is_test(){
return
"this is test"
; }
17
18
void
ret_void() {}
19
int
ret_int() {
return
_test; }
20
int
ret_mul(
int
m)
const
{
return
_test * m; }
21
A get() {
return
A(_test); }
22
void
set(A a) { _test = a.value; }
23
int
_test;
24
};
25
26
int
main()
27
{
28
// 注册base类型到LUA
29
lua_tinker::class_<base>(
"base"
)
30
.def(
"is_base"
, &base::is_base)
31
;
32
33
// 注册test类型到LUA,注册test的成员函数和成员变量
34
lua_tinker::class_<test>(
"test"
)
35
.inh<base>()
// 注册继承类
36
.def(lua_tinker::constructor<
int
>())
//注册构造函数
37
.def(
"is_test"
, &test::is_test)
// 注册成员函数
38
.def(
"ret_void"
, &test::ret_void)
39
.def(
"ret_int"
, &test::ret_int)
40
.def(
"ret_mul"
, &test::ret_mul)
41
.def(
"get"
, &test::get)
42
.def(
"set"
, &test::set)
43
.def_readwrite(
"_test"
, &test::_test)
// 注册成员变量
44
;
45
46
test g_test(11);
47
48
lua_tinker::decl(
"g_test"
, &g_test);
49
50
}
// Lua脚本
1
temp = test(4) 创建一个test类
2
print
(temp._test) 打印test的_test成员
3
4
print
(g_test)
5
print
(g_test._test) 打印g_test的成员变量_test
6
print
(g_test:is_test()) 输出信息
7
print
(g_test:ret_int()) 返回g_test的成员变量_test
这么几句就能够方便的使用C/C++定义的结构或类
- LuaTinker
- LuaTinker
- LuaTinker
- LuaTinker
- LuaTinker 使用
- luatinker 的移植
- luatinker 的使用
- c++ 封装luatinker
- luatinker 常用函数说明
- LuaTinker向Linux移植成功
- luatinker 的一个计数 BUG
- LuaTinker的bug和缺陷
- 一个实而不华的LuaTinker(1)
- 一个实而不华的LuaTinker(2)附属代码
- LuaTinker:清晰简单的lua的封装.及其中的陷阱
- jQuery LigerUI 使用教程入门篇
- 查询表达式Linq
- HOW TO:验证和更改 MSDE 系统管理员密码
- 数据库课程设计_实验室管理系统_登录
- 将博客搬至CSDN》的文章
- LuaTinker
- hdu 1573 孙子定理
- 发明专利的申请流程图
- STL中的list容器
- 通过淘宝的一道面试题看变量的作用域
- 骆驼的最后一滴眼泪
- 会话描述协议(SDP)介绍
- iOS应用崩溃日志分析
- 设计模式