Как зарегистрировать два класса, унаследованных от одного и того же класса, используя LuaBridge?
Я пытаюсь зарегистрировать два класса, которые наследуются от одного и того же класса, используя LuaBridge, но не удалось.
Как я могу зарегистрировать три класса ниже?
класс А { общественности: int x; }; класс B1: общедоступный A { общественности: int y; }; класс В2: общедоступный А { общественности: int z; };
Я могу просто зарегистрировать A и B1, как это
getGlobalNamespace(L),.beginClass("А").addConstructor ().endClass ().deriveClass("B1").addConstructor<пустота (*) (аннулируются)>().endClass ()
А также
getGlobalNamespace(L),.beginClass("А").addConstructor ().endClass ().deriveClass("B1").addConstructor ().endClass ().deriveClass ("B2").addConstructor<пустота (*) (аннулируются)>().endClass ()
получается зарегистрировать B2, как если бы он наследовал от B1.
Любая помощь с благодарностью.
1 ответ
Решение
getGlobalNamespace(L)
.beginClass<A>("A")
.addConstructor()
.endClass()
.deriveClass<B1, A>("B1")
.addConstructor()
.endClass()
.deriveClass<B2, A>("B2")
.addConstructor<void(*)(void)>()
.endClass()