仲間のstackoverflowerの1人が投稿した次の投稿を見て、ちょっと唖然としました。
誰かが次のコード スニペットでシフト操作を説明しますか?
std::vector<bool> a;
a.push_back(true);
a.push_back(false);
//...
for (auto it = a.begin(); it != a.end();) // see 0x for meaning of auto
{
unsigned b = 0;
for (int i = 0; i < 8*sizeof(b); ++i)
{
b |= (*it & 1) << (8*sizeof(b) - 1 - i);
++it;
}
// flush 'b'
}