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

Marc Mutz marc.mutz at kdab.com
Sat Apr 11 14:33:09 CEST 2015


On Friday 10 April 2015 14:06:18 André Somers wrote:
> Marc Mutz schreef op 10-4-2015 om 13:29:
[...]
> > For one, you're not supoosed to inherit from value classes. For
> > another... Oh, I think that's enough reasons :)
> 
> That a religious argument instead of a technical one.

Avoiding undefined behaviour isn't "religious". It's deeply technical. See any 
C++ text book for why.

> It was meant as a serious question.

And this was a serious answer. :)

> It looks to me like the chosen
> alternative is more complex than what was there before,

That's the bane of C++ library developers. They get to eat the mud so users 
can have nice shiny interfaces. In this case, after the change (and its 
completion) there's only one class that deals with lists of strings and not 
two. Easier. The user cannot accidentally invoke UB because there's only one 
class he needs to deal with. Safer. No extra code necessary for generic 
programming, as QList<QString> is fully featured. Easier. Less useless 
conversions between QList<QString> and QStringList. More performant.

For us, a major advantage is that we can equip QVector<QString> with the same 
extended API as QStringList, easily. That'd just be the next step.

Thanks,
Marc

-- 
Marc Mutz <marc.mutz at kdab.com> | Senior Software Engineer
KDAB (Deutschland) GmbH & Co.KG, a KDAB Group Company
Tel: +49-30-521325470
KDAB - The Qt Experts



More information about the Development mailing list