24.05.2017, 16:19, "NIkolai Marchenko" <[email protected]>:
> 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.

So, do you propose to replace QList with QArrayList in existing APIs? That 
would be a serious pessimization for small types.

> 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 <[email protected]> wrote:
>
>> 24.05.2017, 15:49, "NIkolai Marchenko" <[email protected]>:
>>> 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 
>>> <[email protected]> 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
>>>> [email protected]
>>>> http://lists.qt-project.org/mailman/listinfo/development
>>> ,
>>>
>>> _______________________________________________
>>> Development mailing list
>>> [email protected]
>>> http://lists.qt-project.org/mailman/listinfo/development
>>
>> --
>> Regards,
>> Konstantin


-- 
Regards,
Konstantin
_______________________________________________
Development mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/development

Reply via email to