У меня есть следующий класс:
class A : public QObject
{
Q_OBJECT
public:
enum testEnum
{
one= 1,
two= 2
};
Q_ENUM(testEnum)
};
И у меня есть второй класс, который наследуется от первого класса:
class B : public A
{
Q_OBJECT
public:
Q_ENUMS(A::testEnum)
};
Если я теперь включу класс B
в третий класс и попытаюсь использовать
static int l_enumIdx = B::staticMetaObject.indexOfEnumerator("A::testEnum");
это не удалось! Как я могу зарегистрировать право Q_ENUMS
и получить к нему правильный доступ с помощью QMetaObject::indexOfEnumerator()
? Или есть лучший способ построить такие структуры перечислений и зарегистрировать их?