J'ai des objets C++ et j'ai Lua objets/tables. (Ont également SWIG liaisons C++.)Suivi des tables Lua en C
Ce que je dois être en mesure de faire est d'associer les deux objets de sorte que si je ne dis
CObject* o1 = getObject();
o1->Update();
il fera l'équivalent Lua:
myluatable1.Update();
jusqu'à présent, je peux imaginer que CObject :: Mise à jour aurait le code suivant:
void CObject::Update(){
// Acquire table.
// ???
// Do the following operations on the table.
lua_getfield(L, -1, "Update");
lua_pcall(L, 0, 0, 0);
}
Comment est-ce que je devrais stocker/placer la table de Lua à employer, et ce qui irait dans le // ???
ci-dessus pour faire fonctionner l'appel de mise à jour?
Pourrait-on assigner un identifiant entier à l'objet C++ et stocker la table associée dans une table globale appelée alias globaltable [tableID] = associatedTable? –