Para hacer qué? ¿Dónde está la pregunta? Realmente no puedo dar un buen ejemplo de "cómo te hará la vida más fácil" sin un problema que resolver. Todo lo que puedo hacer es mostrarle los conceptos básicos de cómo funciona la clase en la aplicación.
Aquí hay un enlace en su interface. Si desea manejar solo un conjunto de bits simple y constante, puede crear uno fácilmente. Si desea uno que pueda crecer o reducirse, mire al Boost. Aquí está un ejemplo rápido con la norma bitset:
std::bitset<40> imFiveBytesLong;
imFiveBytesLong.set(0, true);
ahora parece que
0000000000000000000000000000000000000001
con el bit 0 ª. Y se puede probar para ver si se establece el bit preguntando:
bool isItSet = imFiveBytesLong.test(0);
O puede contar el número de bits puestos preguntando:
std::size_t numSet = imFiveBytesLong.count();
Editar:
Para responder su comentario a continuación echa un vistazo al to_ulong método de bitset y uno de los constructors de bitset. Poniéndolo juntos:
int main()
{
std::bitset<10> mySet(120ul); // initialize from unsigned long
std::cout << mySet.to_uLong(); // print as an unsigned long
return 0;
}
¿Cuál es la pregunta? No veo '?' Allí. – karlphillip
@karlphillip ..any? * ahí. –