最佳答案
我们都知道(希望如此) ,vector<bool>
是完全破碎的,不能作为 C 数组处理。获得此功能的最佳方法是什么?
到目前为止,我想到的主意是:
vector<char>
代替,或者vector<bool_wrapper>
你们怎么处理这个问题? 我需要 c_array()
的功能。
作为一个附带问题,如果我不需要 c_array()
方法,什么是最好的方法来处理这个问题,如果我需要随机访问?我应该用 deque 还是别的什么?
编辑:
vector<bool>
是专门化的,因此每个 bool
需要1位。因此,您不能将其转换为 C 样式的数组。当然,由于可能的对齐问题,我不得不读入 my_bool
: (
struct my_bool
{
bool the_bool;
};
vector<my_bool> haha_i_tricked_you;