To use a genuine std::vector <T> one can specify T as unsigned char.
The sizeof (unsigned char) and sizeof (bool) on MSVC (and other compilers) are same.
EDIT: It seems that std::bitset is a non-STL container (source).
Quote:
Originally Posted by MSDN
