07/09/04 20:50:51
>>482
lua_register(L, "hoge", hogehoge);
を
lua_pushlightuserdata(L, static_cast<void*>(hoge));
lua_pushcclosure(L, hogehoge, 1);
lua_setglobal(L, "hoge");
に変えればいんじゃね?
hogehogeの中身は
int hogehoge(lua_State *L)
{
int* hoge = static_cast<int*>(lua_touserdata(L, lua_upvalueindex(1)));
// hogeを使っていろいろ
}
あと、hogeはどこでdeleteするの?
delete後にhogehogeを呼ばれたらアウト