Wäre es so kompliziert, ein uint zu verwenden und die Bits als bools?
Code:
uint myset = 0;
myset |= (1 << 8); // Setzt Stunde 8
myset &= ~(1 << 8); // Löscht Stunde 8
myset & (1 << 8) > 0; // Testet, ob Stunde 8 gesetzt ist
Das ganze zur Not in eine kleine (eventuell generische) Klasse/Struktur packen und gut. Hatte so etwas mal in C++ geschrieben, aber das war spezialisiert auf ein bestimmtes Datenformat für einen Mikrocontroller.
@Roter Kasten:
Die C++-STL kennt set als generische Container-Klasse. Ist natürlich kein Sprachfeature, kann dafür aber alles aufnehmen. Aber ansonsten ist das wohl so.
Edit: Es gibt übrigens auch System.Collections.BitArray. Das macht ja im Prinzip schon all das.