Когда я использовал более старые API-интерфейсы, например, API-интерфейсы C в Unix, я всегда замечаю, что люди предпочитают меньше (<
) по сравнению с (==
) при сравнении их плохих возвращаемых значений.
int result = send(...);
if (result < 0) { perror("..."); }
В случаях, о которых я говорю, код возврата всегда положителен, 0
или -1
(с errno
установлено правильное значение). Так почему бы просто не проверить ошибку, используя (result == -1)
вместо (result < 0)
?
Я спрашиваю, потому что мне было интересно, если это по привычке или если более эффективно использовать меньше, чем? Я думал о том, что если бы вы сравнивали два uint64_t
, и вы обнаружили разницу в MSB, вам не пришлось бы проверять остальные 7 байтов и т.д. Я мог бы достичь этой логики, хотя!