Objective c 目标C中的位运算符
我有8个viewController对象Objective c 目标C中的位运算符,objective-c,bitwise-operators,Objective C,Bitwise Operators,我有8个viewController对象(vieController1、viewController2、…viewController8)和4种类型的关系(上移、下移、左移、右移) 每个控制器都与其他控制器有一些关系 例如: viewController1和viewController2之间有关系“向上移动”和“向下移动” viewController1和viewController3之间有关系“向右移动”和“向左移动” 所以,我在想,我可以存储所有的控制器都是8位格式的吗。 例子: 如果vie
(vieController1、viewController2、…viewController8)
和4种类型的关系(上移、下移、左移、右移)
每个控制器都与其他控制器有一些关系
例如:
viewController1和viewController2之间有关系“向上移动”
和“向下移动”
viewController1和viewController3之间有关系“向右移动”
和“向左移动”
所以,我在想,我可以存储所有的控制器都是8位格式的吗。
例子:
如果viewController1
亲属是viewController2、viewController4、viewController5
和viewController8
意味着
viewController1 relatives = 011011000.
所有控制器都是相同的
同样,我可以用4位格式存储与每个控制器的所有关系
例如:
如果viewController1
relativeviewController3
以及它们之间的关系move\u up
和move\u down
viewController1亲属=00100000
和关系=1100。
这是更好的存储方式,或者在目标c中还有其他方式。如果这是更好的方式,请引导我前进。另一方面,请就这个问题提出你的建议
提前谢谢 我注意到的唯一一件事是,控制器之间的关系应该遵循二进制顺序,这只是为了澄清 i、 e。
viewController1
relativeviewController2、viewController4、viewController5
和viewController8
显示为
viewController1 relative = 10011010
编辑:
澄清
viewController2的位掩码为00000010
viewController4的位掩码=00001000
viewController5的位掩码为00010000
viewController8的位掩码为10000000
而
和
将它们组合在一起,可以得到视图控制器1的关系
我认为这是一种很好的方法。简单快速。在Objective-C中使用您的方法是否可以完成某些事情?我个人认为,你可以使用任意多的C,毕竟它是C的子集:-)似乎是一个好方法。顺便说一句,我想不出任何Objective-C设施能更好地完成这项工作,特别是如果你对位操作感到满意的话。但是,如果要变得更复杂,您可能需要查看NSSet/NSMutableSet。对不起,我无意中删除了您的帖子。。。你能转寄吗?谢谢你的提醒。我不是故意不尊重你。实际上,我没有“修复”问题中的代码,只是重新格式化了它。OP在他的帖子中从左到右计算了ViewController,为了澄清这一点,我认为应该从右到左计算。我在OP的帖子中改变的是viewController1 relative=10011010中的数字太多了,应该只有八个数字。谢谢你的回复。但是我如何将这种格式存储在objective see中呢。你能解释一下哪种数据类型适合于此,以及在获取每个相对控制器时如何进行解析吗。