On Wednesday 20 January 2016 23:43:07 Giuseppe D'Angelo wrote: > This poses further questions down the line, such as whether it's "ok" > having an index API based on signed integers. (It is for convenience, it > is not for correctness, but I guess that's all the topic here, isn't it? :))
Current guidance from the standards committee is that you should use signed integers unless you specifically need modulo-2 overflow. > > And my answer would be to ban the std containers from Qt entirely and > > restore support for QT_NO_STL. > > Which is never going to happen since the STL containers are superior in > performance and code size and we want to use them extensively inside Qt. > If/how/when expose STL types in our APIs is all to be seen... > > ... can we go back thinking about that? We can't get QT_NO_STL for more reasons than this. We've deprecated our algorithms library, for good reason. With C++11, there are some things you just cannot do without the Standard Library, like <initializer_list> and <type_traits>. And yes, we're using the Standard Library containers in our own code. However, let me also say that our source code is product, so we need to have readable code. We *will* trade some performance off for more readable code, where "more readable" means Qt-like code that users of our API will understand. So whenever I see a std::erase with nested std::remove_if, I cringe. It's highly efficient, but a sore in the eye. -- Thiago Macieira - thiago.macieira (AT) intel.com Software Architect - Intel Open Source Technology Center _______________________________________________ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development