我无法遍历数组并更改映射中的值

问题描述 投票:0回答:1

我在Lua中有一个映射和一个数组。我不知道地图到底叫什么。映射为C ++而且我必须遍历数组,并在地图中更改Buliian的第二个参数。我是这样但出现错误-尝试调用表值

self.arrayObjectHint = {}
self.arrayObjectHint['dustpan'] = false
self.arrayObjectHint['goblet'] = true
self.arrayObjectHint['dryflowers'] = true
self.notHint = {'goblet', 'dryflowers', 'dustpan'}
..........
for index, objectId in(self.notHint) do
  self.arrayObjectHint[objectId] = not self.arrayObjectHint[objectId]
end

怎么了?

lua
1个回答
0
投票
for index, objectId in(self.notHint) do
  self.arrayObjectHint[objectId] = not self.arrayObjectHint[objectId]
end

您忘记了通用for循环中的迭代器函数。

for index, objectId in ipairs(self.notHint) do
  self.arrayObjectHint[objectId] = not self.arrayObjectHint[objectId]
end
© www.soinside.com 2019 - 2024. All rights reserved.