我有一系列位标志,用于订购类似的东西{none=0x00, puppies=0x01, kittens=0x02, cute=0x04, funny=0x08, scary=0x10}
。
每当用户进行搜索时,我只是|=
他们希望的每个标志,例如,如果用户想要一些可爱的小猫,我只会search |= cute
和search |= kittens
。
然而,当我执行搜索操作时,通过循环并检查该项目所在的所有项目(flag & search) != 0
,它会返回具有可爱属性或小猫的项目。我怎样才能改变它,让它返回可爱的属性和小猫?