Я знаю, что UIKit использует CGFloat из-за независимой от разрешения системы координат.
Но каждый раз, когда я хочу проверить, есть ли frame.origin.x 0, это заставляет меня чувствовать себя больным:
if (theView.frame.origin.x == 0) {
// do important operation
}
Является ли CGFloat уязвимым для ложных срабатываний при сравнении с ==, <=, >=, <, >?
Это точка с плавающей запятой, и у них есть проблемы с точностью: 0.0000000000041 например.
Является ли Objective-C обрабатывающим это внутренне при сравнении или может случиться, что a origin.x, который читает как ноль, не сравнивается с 0 как true?