On quarta-feira, 20 de junho de 2012 08.52.55, Marc Mutz wrote:
> Hi Thiago,
>
> [you knew this would be coming, I don't let you down]
>
> On Monday June 18 2012, Thiago Macieira wrote:
> > * port QList
>
> Before actually porting QList (esp. as I take the above to mean that QList
> won't be bound to void* slots anymore): Is there than *anything* in QList
> that QVector doesn't do at least as good or that could be ported over to
> QVector (reserving space in front for prepends comes to mind, though I'd
> argue that code that uses this a lot is broken by design anyway).
>
> So, can we please just have the equivalent of
>   template <typename T>
>   using QList = QVector<T>;
> after moving the members that QList has but QVector lacks over to QVector?

My plan is *almost* that.

QList<T> will be a QVector<T> if
        sizeof(T) < 32
        T is movable

Otherwise, QList<T> will be backed by a QVector<T *> and the pointer will be
dereferenced in the accessor functions.

The value of 32 is chosen because it will be the size of QVariant on 64-bit
platforms.

--
Thiago Macieira - thiago.macieira (AT) intel.com
  Software Architect - Intel Open Source Technology Center
     Intel Sweden AB - Registration Number: 556189-6027
     Knarrarnäsgatan 15, 164 40 Kista, Stockholm, Sweden

Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development

Reply via email to