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 Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development