Возможно ли в C ++ определять BIT0, BIT1, BIT2 другим способом в C ++ без использования #define?
#define BIT0 0x00000001
#define BIT1 0x00000002
#define BIT2 0x00000004
Затем я беру то же самое и делаю из этих битов состояния:
#define MOTOR_UP BIT0
#define MOTOR_DOWN BIT1
Примечание: я использую только 32 бита, а не 64 бита. Я также использую макрос setBit(flagVariable, BIT)
(следовательно, макрос clrBit
, чтобы сделать противоположное), чтобы установить биты, а затем сравнить, установлен ли бит с помощью побитового оператора, такого как
if (flagVariable & MOTOR_UP) {
// do something
clrBit(flagVariable, MOTOR_UP);
}
Есть ли в C ++ тип, который уже содержит эти битовые маски?