Is it possible to have an array of bools?
No problem. Also you can use a vector of bools: std::vector<bool>
You can use a bitset too, but it's primarily used for optimization.
Also I would like to append that you may not declare only arrays of void, references and functions (though you may declare an array of function pointers).