деструктор lua userdata c ++ - PullRequest
2 голосов
/ 29 мая 2010

В lua для памяти, выделенной с помощью lua_newuserdata, можно ли зарегистрировать деструктор, так что деструктор вызывается, когда область памяти является мусором, собранным lua?

Спасибо!

1 Ответ

8 голосов
/ 29 мая 2010

Конечно, это так.Если у userdata есть метатаблица с функцией __gc, она будет вызвана, когда userdata будет собирать мусор, с userdata в качестве параметра.Посмотрите на http://www.lua.org/manual/5.1/manual.html#2.10.1

...