Ich versuche, eine Tabelle von Variablen in einen Funktionsaufruf als Argumente zu entpacken. Kurz gesagt, ich versuche, Abhängigkeitsinjektionen in meinen Prozess zu imitieren, indem ich dies tue. Wenn ich das bei https://www.lua.org/cgi-bin/demo mache, sagt es mir, dass Entpacken ist Null. Es scheint, dass es entfernt wurde? Gibt es einen alternativen Weg, dies zu tun, anstatt eine Tabelle zu übergeben, in der sich die Objektinstanzen befinden? Ich mag die Idee, jedes Objekt in meinem PostStart() - Aufruf anzugeben.Lua 5.3 entpacken
Object1 = {}
function Object1:Create()
local obj = {}
obj.name = "Object1"
return obj
end
Object2 = {}
function Object2:Create()
local obj = {}
obj.name = "Object2"
return obj
end
function PostStart(obj1, obj2)
print(obj1.name, obj2.name)
end
objs = {}
table.insert(objs, Object1:Create())
table.insert(objs, Object2:Create())
PostStart(unpack(objs))
Tun Sie dies an der Spitze Ihres Codes 'unpack = table.unpack oder entpacken Sie ' – tonypdmtr
Oh, das war einfach. Vielen Dank :) – user441521