lua和luabind编译测试使用

1 下载lua-5.1.4.tar.gz和luabind-0.9.1.zip
2 解压后,新建vs工程lualib luabindlib
生成静态库 生成对应lib
 luabind需要编译boost库


2 测试工程test
包含目录
E:\library/boost_1_55_0;../lua-5.1.4\src;../luabind-0.9.1
包含的lib
luabindlib.lib;lualib.lib
lib路径
../lualib/$(PlatformTarget)/$(Configuration)/;../luabindlib/$(PlatformTarget)/$(Configuration)/




#include "stdio.h"


extern "C"{
#include "lua.h"
#include "lualib.h"
#include "lauxlib.h"


}


#include "luabind/luabind.hpp"


class CUser
{
public:
static CUser& Instance(){
if(instance_==NULL)
{
instance_ = new CUser;
}
return *instance_;
}
int id;
public:
static CUser* instance_;
};


CUser* CUser::instance_ = NULL;


CUser& GetUserInstance()
{
return CUser::Instance();
}


extern "C" int init(lua_State* L){
using namespace luabind;
open(L);
module(L)
[
def("GetUserInstance",&GetUserInstance)
];
return 0;


}


int main()
{
using namespace luabind;
lua_State* L = lua_open();
luaopen_base(L);
luaopen_table(L);
luaL_openlibs(L);
luaopen_string(L);
luaopen_math(L);
init(L);
int ret = luaL_dofile(L,"D:\\GNU_source\\lua\\luabindTest\\x64\\Debug\\test.lua");
if(ret)
{
lua_close(L);
return -1;
}
ret= luabind::call_function<int>(L,"addFunc",2,3);
luabind::call_function<void>(L,"callUser");
lua_close(L);
return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值