[Development] QList for Qt 6
Thiago Macieira
thiago.macieira at intel.com
Thu May 30 20:09:48 CEST 2019
On Wednesday, 29 May 2019 02:26:57 PDT Lars Knoll wrote:
> > On 28 May 2019, at 17:17, Thiago Macieira <thiago.macieira at intel.com>
> > wrote:
> > On Monday, 27 May 2019 04:51:35 PDT Eike Ziller wrote:
> >
> >>> * QVector for Qt 6 will most likely be updated with the changes Thiago
> >>> has
> >>> waiting since quite some years
> >>
> >> What is the summary for these?
> >
> >
> > The long story short is that the begin pointer and size members move from
> > the d pointer to the actual object. The slightly longer story is that
> > it's implemented using QArrayDataPointer and the supposedly
> > exception-safe, tag- dispatched operations in QArrayDataOps that João
> > wrote 7-8 years ago.
>
> How important is exception safety? I’m rather unsure whether that’s
> required.
It's not. The point is that it's implemented. And the tag dispatching is
actually an improvement over our current code, since it produces much more
optimised code for the particulars of each T.
> > I also introduced a QGenericArray class that QVector derives from and
> > QList could have, but doesn't look like it will be necessary for Qt 6.
>
>
> Weren’t you also thinking about using the same data structure for QByteArray
> and QString?
QArrayDataPointer yes. QGenericArray really is QVector, except for the methods
that return QVector references.
But I never got either QByteArray or QString to use QADP. That's the point
where I ran out of time 7 years ago.
--
Thiago Macieira - thiago.macieira (AT) intel.com
Software Architect - Intel System Software Products
More information about the Development
mailing list