1是否有一種方法可以編寫函數以僅基於它們具有相同密鑰的事實來乘以兩個值?下面是一些psudocode什麼,我心裏有:在Lua中有一個共同密鑰的調用值
operation = {a=12, b=7, c=31}
operator1 = {a=0.5}
operator2 = {a=0.7}
operator3 = {b=0.3}
function Operate(x)
return x.common_key * operation.common_key
end
print (Operate (operator1))
print (Operate (operator3))
---> 6
---> 2.1
當然此代碼不起作用,因爲「common_key」不是一個真實的東西。無論函數的論點與「操作」字典有什麼共同之處,它都是一種替身。在這種情況下,它將是「a」,所以如果可能的話,該函數將乘以「operator1.a」和「operation.a」。
'function Operate(x)local k,v = next(x)return operation [k] * v end' –
這很好用!我只是不知道如何。我將閱讀手冊中的「下一個」功能...... – ridthyself