Page 1 of 1

Qt – Q_DECLARE_METATYPE() mit einem Enum-Klassentyp

Posted: 07 Jan 2025, 14:00
by Guest
Gibt es eine Möglichkeit, Q_DECLARE_METATYPE() mit Enum-Klassentypen zu verwenden? Ich weiß, dass alte Aufzählungen funktionieren, aber was ist mit diesen neuen, stark typisierten? Ich kann an anderer Stelle nichts zu diesem Problem finden. Ich verwende die neueste verfügbare Qt-Version.

Beispiel:

Code: Select all

enum Foo
{
A,
B,
C
};

Q_DECLARE_METATYPE(Foo)
QVariant var = Foo::A; // works fine

enum class Bar
{
X,
Y,
Z
};

Q_DECLARE_METATYPE(Bar)
QVariant var = Bar::X; // doesn't compile