In the documentation, I can see that std::vector<bool>
is optimized for space-efficiency by making every boolean occupy one single bit. From the documentation:
The manner in which std::vector is made space efficient (as well as whether it is optimized at all) is implementation defined.
Does this mean that it depends on the compiler's implementation? If it does, where can I check if my compiler supports it? Why wouldn't they want it supported? It seems like a really simple and efficient implementation.
If not, what does it mean and what does it imply if I want this optimization to take place?
I'm using TDM GCC toolset.