バイナリの「フラグ」を使用して状態やオプションなどを表現したい場合は、それらを渡して、0001 と 0010 のようなオブジェクトに格納し、OPTION1 | OPTION2
渡さOPTION1
れるOPTION2
ものが 0011 になるようにして、オプションの組み合わせを表します。 .
C ++でこれを行うにはどうすればよいですか? みたいなことを考えていた
enum Option {
Option_1 = 0x01,
Option_2 = 0x02,
Option_3 = 0x04,
//...
}
void doSomething(Option options) {
//...
}
int main() {
doSomething(Option_1|Option_2);
}
しかし、理想的にdoSomething
は、与えられたオプションを解釈する方法を知っています。
私は正しい軌道に乗っていますか?より良い方法はありますか?
アップデート
Option
また、すべての可能な組み合わせを定義する必要はありませんか?