ainer with a proxy <tt>reference</tt> type can not
fulfill the container requirements as specified in the C++
standard (unless one resorts to strange iterator semantics).
<tt>std::vector&lt;bool&gt;</tt> has a proxy <tt>reference</tt>
type and does not fulfill the container requirements and as a
result has caused many problems. One common problem is when
people try to use iterators from <tt>std::vector&lt;bool&gt;</tt>
with a Standard algorithm such as <tt>std::search</tt>. The
<tt>std::search</tt> requirem