[Development] Are SiCs through #include cleanups considered acceptable?

André Somers andre at familiesomers.nl
Fri Apr 10 11:56:37 CEST 2015


Olivier Goffart schreef op 10-4-2015 om 11:12:
> On Friday 10 April 2015 10:03:33 André Somers wrote:
>> Thiago Macieira schreef op 9-4-2015 om 20:51:
>>> On Thursday 09 April 2015 11:45:20 Thiago Macieira wrote:
>>>> It wasn't a gratuitous change, though. It was required so I could move
>>>> some
>>>> QStringList methods to QList<QString>. Since qlist.h needs to include
>>>> qstringlist.h to ensure the full specialisation of
>>>> QListSpecialMethods<QString> is present before QList<QString> is ever
>>>> instantiated, I had to make sure qstringlist.h didn't include
>>>> qdatastream.h
>>>> --  because qdatastream.h includes qlist.h and boom! cyclic includes.
>>> The objective is to make Qt6 QStringList be a typedef to QList<QString>,
>>> not a separate class.
>>>
>>> We've already managed that for QByteArrayList -- it's just a typedef.
>> There are quite a number of convenience functions on QStringList. Do you
>> really mean to break the code of everyone using them? Better start
>> marking those as deprecated soon then?
> No, They would still be there because of the template specialization.
> Look at QByteArrayList.
> http://code.woboq.org/qt5/qtbase/src/corelib/tools/qbytearraylist.h.html#QByteArrayList
>
Interesting approach. What's the benefit over using a class inheriting 
from the template as QStringList does?

André




More information about the Development mailing list