сравнивал ее 5й и 6й версии. Наткнулся на забавный факт (возможно уже обсуждалось, а я пропустил...) В Qt5 в документации к QVector было четко сказано:
QVector should be your default first choice. QVector<T> will usually give better performance than QList<T>, because QVector<T> always stores its items sequentially in memory, where QList<T> will allocate its items on the heap unless sizeof(T) <= sizeof(void*) and T has been declared to be either a Q_MOVABLE_TYPE or a Q_PRIMITIVE_TYPE using Q_DECLARE_TYPEINFO. See the Pros and Cons of Using QList for an explanation.
А в Qt6, внезапно, статьи QVector уже (почти) не существует. Указано только такое: QVector is an alias for QList ... Please see the QList documentation for details.
В общем, в связи с этим вопрос, почему вдруг они ушли от (по их собственным словам) более производительного к менее производительному контейнеру?
Еще бы узнать чем почему нужно отказываться от векторов из STL, которые без кю.
Его апгрейднули qt.io/blog/qlist-changes-in-qt-6
Потому что в приложение вообще рекомендуется (Qthшниками) не использовать контейнеры Qt, а использовать контейнеры STD. Только если в API Qt надо использовать что-то из контейнеров Qt, только тогда народная контейнеры Qt, ну и выбирать там уже будет нечего., что будет то м надо использовать
Ну слишком уж категорично, кутовые контейнеры отчасти безопасно работают, например метод at у вектора
Обсуждают сегодня