On Thursday 03 December 2015 19:49:46 Marc Mutz wrote: > The remainder of the C++ world is moving towards an "always auto" scheme. > We don't need to go there, but I'd at least like to propose, for new code > and as a drive-by, the required use of auto for: > > - template code (esp., but not necessarily only, when the type name would > require the use of 'typename') > - all loop variables (both index and iterators) > the reason being that spelling out the name is usually wrong: > size_t i = stdVector.size() // wrong, should be std::vector::size_type... > also helps when porting from Qt containers to STL ones > - all references to elements in a collection (same problem - way too easy > to misspell std::pair<int, int> for std::pair<const int, int>...)
Let me extend that: - whenever possible when declaring a QList It seems like we all agree that QList as-is will not be in Qt 6[1]. To me, it sounds prudent to anticipate that and to hold QList (whereever possible) in auto variables only, so they port themselves automatically (no pun intended) to, say, QVector, std::vector, or QArrayList. [1] Before you flame again: Independant of the exit strategy, it should be consensus that the *name* QList will only exist as a porting vehicle (deprecated class or deprecated template alias or something entirely different). Whether the actual implementation lives on as QArrayList (say) is orthogonal to that. Thanks, Marc -- Marc Mutz <[email protected]> | Senior Software Engineer KDAB (Deutschland) GmbH & Co.KG, a KDAB Group Company Tel: +49-30-521325470 KDAB - The Qt Experts _______________________________________________ Development mailing list [email protected] http://lists.qt-project.org/mailman/listinfo/development
