On Wednesday 20 August 2014 21:27:44 Marc Mutz wrote:
> On Wednesday 20 August 2014 21:03:21 Иван Комиссаров wrote:
> > I'm not sure QOptional should mimick T*, not QVariant, but ok.
>
> QOptional<T> opt;
> T *pt;
> QVariant v;
>
> if (opt) ...
> if (tp) ...
> if (v) ... // ERROR
> if (!opt) // operator! missing, btw
> if (!tp)
> if (!v) // ERROR
>
> T t = *opt;
> T t = *tp;
> T t = *v; // ERROR
>
> Seems pretty clear to me it already models T*, not QVariant... :)
The optional-cast-to-boolean is a source of problems for the current
std::optional. That hasn't been solved.
QOptional<bool> opt1 = false;
QOptional<int> opt2 = 0;
if (opt1)
// this is true!
if (opt2)
// this is false!
--
Thiago Macieira - thiago.macieira (AT) intel.com
Software Architect - Intel Open Source Technology Center
_______________________________________________
Development mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/development