Qt: Nenhum metadado de meta.enumeratorCount () para enum em Q_OBJECT, por quê?

Eu tenho a seguinte classe, onde eu tento obter alguns metadados de umenum MyEnum. No entanto, quando loopingmeta.enumeratorCount() sua contagem é sempre 0. Basicamente eu estava seguindoeste exemplo aqui. A fim de encontrar o problema, eu estava tentando o mesmo com os métodos também, mesmo problema - contagem de métodos 0. Código compila, sem erros sem avisos.

Deve ser um erro bobo .... talvez você possa me ajudar

class FsxSimConnectQtfier : public QObject
{
    Q_OBJECT
public:
    explicit FsxSimConnectQtfier(QObject *parent = 0);
    enum MyEnum { G1, G2 };
    static const QString simConnectExceptionToString(const DWORD id);
};

const QString FsxSimConnectQtfier::simConnectExceptionToString(const DWORD id) {
    // int i= FsxSimConnectQtfier::staticMetaObject.indexOfEnumerator("MyEnum");
    // -1 -> not found, why?
    QMetaObject meta = FsxSimConnectQtfier::staticMetaObject;
    for (int i=0; i < meta.enumeratorCount(); ++i) {
        QMetaEnum m = meta.enumerator(i); // never reached, why?
    }
    return "";
}

questionAnswers(1)

yourAnswerToTheQuestion