【发布时间】:2013-08-29 10:14:23
【问题描述】:
我真的不知道 lua 的线索,如果这是愚蠢的,那么对不起^^'
我有一个像这样的常量(?):
Config.name
它的内容是“真”或“假”。我动态设置了这个常量名(或成员名?),所以它可以是例如:Config.george、Config.steve 或 Config.tim。 现在我想检查这个常量,但我不知道语法是怎样的。
我想要这样的东西:
for _, friend in pairs(friends) do
if Config.friend.name then
print("He is checked!")
end
end
“friend.name”应该是那个朋友的名字,例如乔治。 这是怎么做到的?
【问题讨论】:
-
您是在问如何相互比较值吗?例如。
Config.friend.name == "george"? -
不,friend.name 应该是 george 或其他名称。 Config.george 是一个 var(或常量,ot 成员.. 我不知道在 lua 中),是真还是假..
-
所以您想检查
Config的键是否设置为true,而键是friend.name是什么?例如像这样的东西?if Config[friend.name] then -
是的,有点。但是该值被设置为我认为的成员(由点分隔)它不是带有索引或其他东西的数组。就像我设置 Config.george = true 然后我想检查 Config.george 是否为真。但我是在一个我还不知道名字的循环中做的,所以我需要一种动态的方式来调用 Config.whatever
-
Config.george只是Config['george']的语法糖。它们在语义上是相同的。如果这两个指针仍然不能完全解决您的问题,您需要添加更多上下文代码来显示您正在尝试做的事情。