比如说一个程序在运行中触发了很多种事件,比如事件A,事件B,事件C,那我怎样用一个int变量在一系列事件发生完后判断是否触发了这些事件呢,比如说,是否触发了事件A,B或C。
比如说,一开始int a=1;
然后设定触发事件A则a*=0;
事后判断a是否为零就可以知道事件A有没有被触发,这是检测1个事件。那如果我要检测多个(几十个甚至上百个)事件呢?
比如说一个程序在运行中触发了很多种事件,比如事件A,事件B,事件C,那我怎样用一个int变量在一系列事件发生完后判断是否触发了这些事件呢,比如说,是否触发了事件A,B或C。
比如说,一开始int a=1;
然后设定触发事件A则a*=0;
事后判断a是否为零就可以知道事件A有没有被触发,这是检测1个事件。那如果我要检测多个(几十个甚至上百个)事件呢?
用二进制位判断,每一个二进制位代表1种事件,这样1个byte可以检测8种事件,如果一个int有4个字节的话可以登记32种事件。