首页 > 解决方案 > Lua:C++ 类型实例和垃圾收集器

问题描述

我对 Lua 中的 gargabe 收集有疑问。问题是:

  1. 我有一个我的类型的实例(在 C++ 中定义)。
  2. 此实例具有对 Lua 表的基于 int 的引用。
  3. 在这张表中,我有一个我的其他类型的实例(在 C++ 中定义)。
  4. 垃圾收集器尝试删除第二个实例。

第一类实例不能被垃圾收集器收集,所以它们一直存在。该表位于这些实例之一中,因此它也始终存在。为什么垃圾收集器认为它的内容不应该存在?

我试图用第一个实例创建一个表,但没有帮助。我该怎么做才能使垃圾收集器正常工作?

标签: c++lua

解决方案


推荐阅读