Учитывая, что все три переменные имеют одинаковые значения, можно ожидать, что следующее сравнение даст ДА:
NSUInteger count1 = 2;
NSUInteger count2 = 2;
NSUInteger count3 = 2;
BOOL countEqual = (count1 == count2 == count3);
// but: countEqual = NO
Увы, countEqual НЕТ, и я хотел бы лучше понять, почему и появляется ли эта конкретная проблема в коде C или C++?
Я предполагаю:
(count1 == count2) --> YES (1)
(YES == count3) or (1 == count3) --> NO (0)