[Development] QList
NIkolai Marchenko
enmarantispam at gmail.com
Wed May 24 15:18:52 CEST 2017
I was talking about the solution that assumes making a QArrayList type and
deprecating QList entirely,
not the one that aliases QList to QVector which I, personally, don't like,
since it will produce a lot of the code perception problems and incorrect
perfomance assumptions.
Not to mention people will still widely use QList as it's "easier to type
"(don't laugh) and "looks like a default container by simplicity of its
name"
(again, don't laugh, I am just outlining potential problems with new users)
On Wed, May 24, 2017 at 4:12 PM, Konstantin Tokarev <annulen at yandex.ru>
wrote:
>
>
> 24.05.2017, 15:49, "NIkolai Marchenko" <enmarantispam at gmail.com>:
> > A semi-sane idea that I think no one has suggested yet:
> >
> > What if, starting from Qt6, QList becomes a wrapper for QArrayList with
> a contructor from this type?
> > After all making existing code slightly _slower_ because of the wrapping
> overhead is way less problematic than breaking it outright.
> > It will nudge the users of QLists that need to be fast to switch but
> will leave users of "default no brainer container" happy as they likely
> wouldn't even notice.
>
> If existing Qt APIs switch from QList to QVector in Qt 6, such change will
> make it hard to support both Qt 5 and Qt 6 in the same code base.
>
> >
> > On Tue, May 23, 2017 at 5:27 PM, Thiago Macieira <
> thiago.macieira at intel.com> wrote:
> >> On Tuesday, 23 May 2017 04:56:52 PDT Olivier Goffart wrote:
> >>> In my opinion for Qt6, we should make prepend, takeFirst amortized
> O(1) in
> >>> QVector.
> >>
> >> That is not very difficult once we move the begin pointer out of the d
> pointer
> >> and into the main QVector class. We need to add an interface to
> QArrayData to
> >> shrink and expand the buffer without relocating it. With that, we
> practically
> >> hide the allocated capacity information from QVector too.
> >>
> >> --
> >> Thiago Macieira - thiago.macieira (AT) intel.com
> >> Software Architect - Intel Open Source Technology Center
> >>
> >> _______________________________________________
> >> Development mailing list
> >> Development at qt-project.org
> >> http://lists.qt-project.org/mailman/listinfo/development
> > ,
> >
> > _______________________________________________
> > Development mailing list
> > Development at qt-project.org
> > http://lists.qt-project.org/mailman/listinfo/development
>
>
> --
> Regards,
> Konstantin
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/development/attachments/20170524/2a870039/attachment.html>
More information about the Development
mailing list