ビットマスクがあるとしましょう
enum ExampleMask
{
Attribute1 = 1 << 1,
Attribute2 = 1 << 2,
...
Attribute27 = 1 << 27
}
したがって、使用可能な 32 ビットのうち 27 ビットを既に使用しています。
ビットマスクを使用してフラグに加えて、3 ビットの符号なし整数も格納および取得できるようにしたいと考えています。
例えば:
// Storing values
int mask = Attribute2 | Attribute6 | Attribute18; // Saving some attributes
int mask |= ???? // How to save the number 8?
// Retrieving values
if(mask & Attribute2) do something...;
if(mask & Attribute6) do something...;
int storedValue = ???? // How to retrieve the 8?
基本的に、ビットマスクに3ビットを予約して、そこに0〜8の数値を保存したい
読んで助けてくれてありがとう。