Die manual sagt hinzuzufügen:
void lua_setfield (lua_State *L, int index, const char *k);
Hat die äquivalent zu t[k] = v
, wo t
der Wert bei dem gegebenen gültigen Index ist und v
ist der Wert an der Spitze des Stapels.
Diese Funktion ruft den Wert aus dem Stapel auf.
Also, genauer gesagt: Drücken Sie was Sie hinzufügen möchten auf den Stapel, dann rufen Sie lua_setfield
. Zum Beispiel:
lua_pushnumber(L, 42);
lua_setfield(L, -2, "answer_to_life_universe_and_rest")
Dies fügt das Feld "answer_to_life ..." mit dem Wert 42
in die Tabelle.
Es wird ein Fehler gemeldet ... –
'lua_pushnumber (L, 42);' – lhf
nvm: P Ich hatte die Zeilen durcheinander gebracht –