int main(int argc, char *argv[])
{
lua_State *L = lua_open();
luaL_openlibs(L);
Lunar<Account>::Register(L);
Account* account = new Account;
Lunar<Account>::push(account);
lua_gc(L, LUA_GCCOLLECT, 0); // collected garbage
lua_close(L);
return 0;
}
There's really not much more needed to push already created objects to Lua.