Details
-
Suggestion
-
Resolution: Invalid
-
Not Evaluated
-
None
-
4.8.2
-
None
Description
We tried to implement a fast QMap based quick multi-aspect search algorithm. The task was to query multiple aspect-QMaps for contained values by a single key. Afterwards these value lists (each containing multiple hits) should be cross-checked for common results.
For this basic algorithm QMap is not feasible because the QMap::values() method unfortunately returns a QList instead of a QSet. However QList does not have fast functions like QSet::intersect(). QList based selfmade replacements for that method would be too slow due to the complexity of QList. QList::toSet() isn't an alternative because it also is far too slow.
This problem made us stuck with one of our core components for data management. It's a showstopper for us.
I want to suggest to add an QMap::values() alternative that returns a QSet instead of a QList. This would be relatively simply add-on with a big benefit!