wei5635607 2019-11-21 15:43 采纳率: 25%
浏览 253

lua的table定义是在堆上面创建内存的吗?

定义一个local table = {value = 0}
然后使用table.insert插入到另外一个table2中 重复插入2次
这时候table2中有3个元素 令table.value=2
然后通过table2[1].value table2[2].value table2[3].value这种形式打印出来的值居然都成了2
去了函数体外面后打印也是2 难道table2中实际存的是table的地址? 然后该内存还是在堆上创建的?如果是地址或者引用 那为什么出了函数体这个内存没有被回收掉
我有点懵逼了!

  • 写回答

0条回答 默认 最新

      报告相同问题?

      悬赏问题

      • ¥15 无法加载以下来源的扩展程序
      • ¥30 关于#oracle soa#的问题,请各位专家解答!
      • ¥15 mounriver里怎么对电机初始化是对pwm初始化函数和gpio初始化函数吗
      • ¥15 anaconda第一步就出不来了,文件名错误
      • ¥15 这个排列组合问题的思路哪个地方有错
      • ¥15 首页运行报错,首页运行报错
      • ¥15 jupyter里pandas为什么调用不了
      • ¥15 解决neuralprophet库运行报错
      • ¥20 想通过nas 配置一台iis服务器
      • ¥30 利用python编写元胞自动机教室火灾出逃,计算最佳出逃时间