On Fri, 20 Dec 2019 at 13:24, Philippe <[email protected]> wrote:
>
> >> just using std::unordered_map would have minimal effort on our side
> >> ("someone else's problem", and it's not even a random 3rd party...)
>
> std::unordered_map is before all an interface and the implemenation varies 
> according to the library supplier.

That is not entirely correct. The standard doesn't specify mere
interfaces; the complexity requirements and validity
requirements specify far more than that. Especially in the case of
std::unordered_map, it's impossible to
implement in a way that provides better performance than what the
stdlib vendors already provide.
We *have* better hash tables in libstdc++, but their advantages over
std::unordered_map go away
due to the way unordered_map needs to work. I do agree with the rest
of what you're saying, see below.

> And X-Platorm Qt users would expect performance consistency I guess.

The performance of stdlib facilities is 95% portable, modulo bugs. But
that's why I agree with your
more salient point. Lars's hash gives us *better* portable performance
than std::unordered_map
gives us, because std::unordered_map can't be implemented with
significantly better performance.
QHash can.
_______________________________________________
Development mailing list
[email protected]
https://lists.qt-project.org/listinfo/development

Reply via email to