Как зарегистрировать два класса, унаследованных от одного и того же класса, используя LuaBridge?

Я пытаюсь зарегистрировать два класса, которые наследуются от одного и того же класса, используя LuaBridge, но не удалось.

Как я могу зарегистрировать три класса ниже?

класс А
{
общественности:
int x;
};
класс B1: общедоступный A
{
общественности:
int y;
};
класс В2: общедоступный А
{
общественности:
int z;
};

Я могу просто зарегистрировать A и B1, как это

getGlobalNamespace (L),
.beginClass<A> ( "А")
.addConstructor ()
.endClass ()
.deriveClass<B1, A> ("B1")
.addConstructor<недействительным (*) (аннулируются)> ()
.endClass ()

А также

getGlobalNamespace (L),
.beginClass<A> ( "А")
.addConstructor ()
.endClass ()
.deriveClass<B1, A> ("B1")
.addConstructor ()
.endClass ()
.deriveClass<B2, A> ("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()
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]