F: Keine Metadaten von meta.enumeratorCount () für enum in Q_OBJECT, warum?

Ich habe die folgende Klasse, in der ich versuche, einige Metadaten einesenum MyEnum. Allerdings beim Überholenmeta.enumeratorCount() seine Zählung ist immer 0. Grundsätzlich folgte ichDieses Beispiel hier. Um das Problem zu finden, habe ich dasselbe mit Methoden versucht, dasselbe Problem - Methodenzahl 0. Code kompiliert, keine Fehler, keine Warnungen.

Muss ein blöder Fehler sein .... vielleicht kannst du mir helfen

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 "";
}

Antworten auf die Frage(1)

Ihre Antwort auf die Frage