QMetaType :: Type из шаблона

Можно ли определить значение QMetaType :: Type аргумента шаблона.

Я попробовал это:

template <class T>
class MyClass {
public:
int getType() {
return QMetaType::type(typeid(T).name());
}
};

Но это всегда возвращает 0 (QMetaType :: UnknownType), потому что Qt использует имена других типов, чем компилятор.

Это должно работать следующим образом:

MyClass<int>().getType();     // 2 (QMetaType::Int)
MyClass<QString>().getType(); // 10 (QMetaType::QString)
MyClass<QRect>().getType();   // 19 (QMetaType::QRect)
MyClass<MyType>().getType();  // 1024 (Set by qRegisterMetaType)

1

Решение

Задача ещё не решена.

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

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

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