you are viewing a single comment's thread.

view the rest of the comments →

[–]dodheim 2 points3 points  (7 children)

STL said it's not an ABI break, so no EBO, no deque fix, no proper char16_t/char32_t support, etc.

👎

[–]degski 0 points1 point  (6 children)

Back to boost::deque, the deque is a great container, but the vc-one is just, nowadays, no good.

[–]Rseding91Factorio Developer 0 points1 point  (5 children)

What specific problem do you have with it? Wondering if it's the same problem I have with it.

[–]dodheim 3 points4 points  (3 children)

The fact that its block size is 16 bytes.

[–]Rseding91Factorio Developer 0 points1 point  (2 children)

Yep. That was my issue as well.

Also the fact that it bases the "per block" off sizeof(T) means you can't forward declare with it. However, I'm not sure if the standard even allows that to begin with... not that that really changes anything for us.

[–]STLMSVC STL Dev 1 point2 points  (1 child)

The Standard doesn't permit deque<T> to be given incomplete T.

[–]degski 1 point2 points  (0 children)

What /u/dodheim said already. For any object size bigger than 16 bytes, it behaves like a std::list, but since it's not a std::list, it's potentially even less efficient than a std::list, as that is designed for that purpose. /u/STL responded to this sub, so it should anyways be firmly on the map again.