Использование luabind 0.81
Простой тест для иллюстрации проблемы:
1)
class 'A'
function A:__init()
print('A init\n')
end
function A:__finalize()
print('A finalize\n')
end
do
local obj = A()
end
collectgarbage("collect")
Выход:
Init
Финализация
2)
class 'A'
function A:__init()
print('A init\n')
end
function A:__finalize()
print('A finalize\n')
end
class 'B' (A)
function B:__init()
A.__init(self)
print('B init\n')
end
function B:__finalize()
print('B finalize\n')
end
do
local obj = B()
end
collectgarbage('collect')
Выход:
Инициация
B init
Проблема: Класс с родителем не удаляется при сборке мусора.
Как решить эту проблему? Спасибо.