So erstellen Sie verschachtelte Lua-Tabellen mit der C-API

8

Ich möchte eine Tabelle wie

erstellen %Vor%

mit der C-API?

Mein derzeitiger Ansatz ist

%Vor%

um die inneren Tabellen in einer Schleife zu erstellen. Vor dieser Schleife benutze ich

%Vor%

zum Erstellen der äußeren Tabelle für 2 numerische Steckplätze.

Aber wie kann ich die inneren Tabellen auf dem äußeren Tisch speichern?

    
Etan 27.10.2009, 11:24
quelle

3 Antworten

17

Hier ist ein vollständiges und minimales Programm, das zeigt, wie man Tabellen verschachtelt. Was Sie eigentlich verpassen, ist die Funktion lua_setfield .

%Vor%

Das Programm druckt einfach true .

Wenn Sie numerische Indizes benötigen, verwenden Sie weiterhin lua_settable :

%Vor%

Anstatt absolute Indizes von 0 zu verwenden, wie ich es getan habe, sollten Sie lua_objlen verwenden, um zu generieren der Index.

    
Mark Rushakoff 27.10.2009, 11:39
quelle
8

Für einfachen Code wie den, den Sie gegeben haben, funktioniert mein lua2c gut und erzeugt den folgenden Code.

%Vor%     
lhf 28.10.2009 00:10
quelle
2

Hier ist etwas generisches, das ich gefunden habe, um ein ähnliches Problem zu lösen, basierend auf der Antwort von lhf. Dadurch wird eine Lua-Tabelle für das Formular

erstellt %Vor%

Mit beliebiger Tabellen- / Untertabellänge.

%Vor%     
GunChleoc 24.02.2015 14:03
quelle

Tags und Links