KEYNOTE: Qt Containers and Algorithms
summary
Qt 6 makes concrete choices: QList==QVector in Qt6 so most sequential containers are contiguous, QMap/QMultiMap wrap std::map behind a shared_ptr (extra indirection), and QLinkedList is dropped; the implicit sharing model (implicit copy-on-write) lets code return lazily created lists without copies but can cause surprising allocations. QString uses UTF-16 (QString is UTF-16), QStringView/Latin1/UTF8 avoid reallocations, QVarLengthArray is not shared, and standard algorithms and C++ Ranges can be applied to Qt containers.
AI-written summary · about
chapters (8)
- 0:00Introduction and speaker intro
- 3:56Why Qt has its own containers
- 17:26Overview of Qt container types
- 24:35Associative containers: QMap and QHash
- 32:52Adapters and specialized containers
- 35:39Text handling in Qt: QString and QByteArray
- 41:18Views vs containers in Qt
- 45:55Q&A session
related talks
52musing namespace std;
01h 01mEffective Qt (2017 edition)
01h 31mNew (& Old) C++ Standard Library Containers - How to Choose the Right Container in C++26 and Beyond
01h 00mOLD VERSION: The Fine Details Behind C++ Containers And Algorithms
01h 29mValue-oriented design in an object-oriented system
01h 33mPython and C++: the best of both worlds
06mC++ and Qt communities: join the forces
51mAccelerated 2D and 3D Graphics in Qt 6
