2013-10-24 7 views
0

У меня есть 8 объектов viewController (vieController1, viewController2,...viewController8) и 4 типа отношений (move_up, move_down, move_left, move_right).Побитовый оператор в объекте C

Каждый контроллер имеет некоторые отношения с другим контроллером.

Для примера:

viewController1 и viewController2 имеют отношения между ними "MOVE_UP" и "MOVE_DOWN" viewController1 и viewController3 имеют отношения между ними "MOVE_RIGHT" и "MOVE_LEFT".

Итак, я имею в виду, я могу хранить все контроллеры родственники содержатся в 8-битном формате. Пример: , если viewController1 родственники: viewController2, viewController4, viewController5 и viewController8 средства

viewController1 relatives = 011011000. 

такой же для всех контроллеров.

и так же можно хранить все отношения с каждым контроллером в формате 4 бит.

Пример: , если viewController1 относительно viewController3 и отношения между ними и move_upmove_down

viewController1 relatives = 00100000 и relationship = 1100.

Это лучший способ для хранения или есть любой другой путь в цель C. если это лучше, значит, любезно посоветуйте мне идти вперед. другие мудрые дают предложение ur относительно этой проблемы.

Заранее спасибо.

+1

Я думаю, что это хороший способ сделать это. Просто и быстро. Есть ли что-то, что будет завершено с помощью вашего подхода в Objective-C? Мое личное убеждение в том, что вы можете использовать столько, сколько хотите, это ведь подмножество C :-) – muthee

+0

Похоже на хороший подход. Оффлайн Я не могу придумать никаких объектов Objective-C, которые лучше справились бы с работой, особенно если вам будет удобно работать с манипуляциями с битами.Однако, если бы он стал намного сложнее, вы могли бы посмотреть в NSSet/NSMutableSet. –

ответ

0

Единственное, что я заметил, это то, что связь между контроллерами должна следовать двоичному порядку, только для уточнения.

т.е. viewController1 относительно viewController2, viewController4, viewController5 и viewController8 показан как

 viewController1 relative = 10011010 

Edit: Для пояснения

viewController2 has bitmask = 00000010

viewController4 has bitmask = 00001000

viewController5 has bitmask = 00010000

viewController8 has bitmask = 10000000

и and ИНГ их вместе дает соотношение для viewController1.

+0

Извините, что я случайно удалил вам сообщение ... Можете ли вы его перепроверить? – muthee

+0

Спасибо за головы. Я не хотел неуважительно относиться. Я не «исправил» код в вопросе на самом деле, просто переформатировал его. OP подсчитал viewControllers слева направо в своем посте, и я думаю, что для уточнения его следует считать справа налево. Что я изменил в сообщении OP, было то, что в viewController1 relative = 10011010 было слишком много чисел, должно быть только восемь чисел. – muthee

+0

спасибо за ур. но как я могу сохранить этот формат в объективном виде. можете ли вы объяснить, какой тип данных подходит для этого, и как я могу разобрать при наборе каждого относительного контроллера. – Nagarajan

Смежные вопросы