Как проверить QVariant типа QVariant :: UserType ожидаемого типа?

Я пишу тестовый код, который будет автоматически перебирать все виджеты Q_PROPERTY, а некоторые свойства используют типы, которые зарегистрированы через qRegisterMetaType. Если я хочу прочитать / записать их в QVariant, мне нужно использовать QVariant :: UserType при сохранении их в варианте. Все идет нормально.

Но когда я хочу проверить чтение и запись этих свойств, мне также нужно знать их тип. Для вещей, которые уже являются стандартными типами qt, я могу сделать это через QVariant :: type (), но так как у меня много пользовательских типов, как это будет выполнено?

Из API QVariant я заметил это:

bool QVariant::canConvert ( Type t ) const

Но я немного сомневаюсь, приведет ли это к неправильным типам в случае перечислений?

Итак, какой надежный способ проверить, какой тип пользовательского типа хранится в QVariant?

Ответы на вопрос(1)

Ваш ответ на вопрос