Mind that all this talk about QList being bad does *not* hold for primitively 
movable types of exactly sizeof(void *). For example QByteArray, which only 
consists of a single d-pointer. For those the disadvantages of QList against 
QVector don't manifest themselves, but the generated code is smaller. Consider 
the following simple program:

int main(int, char **)
{
     CONTAINER<QByteArray> horst;
     horst << "baum" << "baum";
     qDebug() << horst;
     return 0;
}

Replace CONTAINER with QVector, and I get a binary of 16kb, on my 64bit linux 
machine. Replace it with QList and I get 12kb:


ulf@zebra:~/dev$ ls -l build-untitled97-5_6-*
build-untitled97-5_6-Release:
total 68
-rw-r--r-- 1 ulf ulf 14568 Jul 13 13:17 main.o
-rw-r--r-- 1 ulf ulf 35953 Jul 13 13:17 Makefile
-rwxr-xr-x 1 ulf ulf 16016 Jul 13 13:17 untitled97


ulf@zebra:~/dev$ ls -l build-untitled97-5_6-*
build-untitled97-5_6-Release:
total 60
-rw-r--r-- 1 ulf ulf  8824 Jul 13 13:18 main.o
-rw-r--r-- 1 ulf ulf 35953 Jul 13 13:17 Makefile
-rwxr-xr-x 1 ulf ulf 12264 Jul 13 13:18 untitled97


-- 
Ulf Hermann, Software Engineer | The Qt Company

The Qt Company GmbH, Rudower Chaussee 13, D-12489 Berlin
Geschäftsführer: Mika Pälsi, Juha Varelius, Tuula Haataja Sitz der 
Gesellschaft: Berlin, Registergericht: Amtsgericht Charlottenburg, HRB 144331 B

Email: [email protected] | Mobile: + 49 151 68964561 | Phone: +49 30 
63 92 3255 www.qt.io |Qt Blog: http://blog.qt.digia.com/ | Twitter: @QtbyDigia, 
@Qtproject | Facebook: www.facebook.com/qt
_______________________________________________
Development mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/development

Reply via email to