I missed one: On Monday 18 January 2016 23:43:37 Marc Mutz wrote: > #include <QVector> > #include <string> > > int main() { > > QVector<QByteArray> l; > int oldC = l.capacity(); > for (int i = 0; i < 10000000; ++i) { > char buf[std::numeric_limits<int>::digits + 1]; > sprintf(buf, "%d", i); > l.push_back(buf); > int newC = l.capacity(); > if (newC != oldC) > qDebug("%d", newC); > oldC = newC; > } > > } > > $ time ./test > <snip> > real 0m1.769s > user 0m1.572s > sys 0m0.192s
Same with std::vector<QByteArray>: real 0m1.776s user 0m1.616s sys 0m0.156s > best of three runs, core i7-2720QM, GCC 5.3 Ditto. So... is realloc actually the optimisation everyone (incl. me) expected it to be? -- Marc Mutz <marc.m...@kdab.com> | Senior Software Engineer KDAB (Deutschland) GmbH & Co.KG, a KDAB Group Company Tel: +49-30-521325470 KDAB - The Qt Experts _______________________________________________ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development