Ваши ожидания нормальны, но проблема в том, что std::vector<bool>
был своего рода экспериментом коммитом C ++. На самом деле это специализированная структура шаблонов, в которой хранятся значения bool, плотно упакованные в память: один бит на значение.
И поскольку вы не можете иметь ссылку на бит, это ваша проблема.