Название: QVariant Отправлено: ритт от Апрель 30, 2008, 02:52 захотел странного: имею переменную типа QVariant::Type и надо создать пустой валидный QVariant для этого типа. причём, совсем не хочется явно кастить его, например, через QVariant::toInt или QVariant::toString
сейчас приходится пользоваться подобной конструкцией: Код: QVariant::Type type; а хочется как-нибудь легко и изящно что-нибудь вроде Код: QVariant value; Название: Re: QVariant Отправлено: Sergeich от Апрель 30, 2008, 03:33 Гммм...
Цитировать QVariant::QVariant ( Type type ) не канает?Constructs a null variant of type type. Название: Re: QVariant Отправлено: ритт от Апрель 30, 2008, 04:18 я забыл упомянуть одну маленькую деталь :)
результат нужен не просто валидный, но ещё и не нулл Код: QVariant value(QVariant::String); Цитировать QVariant(QString, "") true true QVariant(QString, "") true false а для Код: QVariant value(QVariant::String); и башка не соображает как можно и можно ли вообще избавиться от этого изНулл в варианте Название: Re: QVariant Отправлено: Zmeishe от Май 16, 2008, 12:54 А если породить своего наследника от QVariant? Добавить конструктор с нужным типом и прямо там разрулить Null и Valid.
Название: Re: QVariant Отправлено: ритт от Май 16, 2008, 13:53 будет фактически то же самое, что и в свитче...только в другом блоке кода
ни в ассистанте, ни в сорцах такой возможности не нашёл - видимо, никому не нужно |