2011-02-17 8 views

답변

4

메타 테이블을 삭제해야하는 이유가 무엇이든간에 가능합니다. luaL_newmetatable(L, "foo")"foo" 키를 사용하여 Lua 레지스트리에 저장된 테이블을 생성합니다.

테이블을 삭제하려면 레지스트리의 "foo" 필드를 nil으로 설정하기 만하면됩니다. C의 코드 :

lua_pushnil(L); 
lua_setfield(L, LUA_REGISTRYINDEX, "foo"); 

등가 코드 루아 :

debug.getregistry()["foo"] = nil