3 ms·
>The funny thing is Microsoft’s linked lists are faster than C++ standard vectors. If I had to guess, it's because the std::vector is more conservative in memo
by ric129 10y ago
>The funny thing is Microsoft’s linked lists are faster than C++ standard vectors.
If I had to guess, it's because the std::vector is more conservative in memory use and it causes more malloc/array copy calls.
- Const-me 10y agoI think the main reason is CAtlList class encapsulates its own memory pool. It allocates RAM in batches. The default batch size for CAtlList is 10 elements/batch, user-adjustable in constructor, but I kept the default value 10. The elements are created directly adjacent to each other. This makes iteration faster because RAM locality despite the pointer-based data structure.