> but == should be used for testing things where 0 is just another number, like
> indexes:
>
> if (index == 0)
> …
The index case is especially annoying because we use -1 to indicate notFound,
so !index means “the first valid index” rather than “no index”. It’s pretty odd
to think of false as the first valid array index. I wouldn’t want someone to
write “x = array[false]”.
Also:
If (point.x == 0)
…
If (gps.latitude == 0)
…
etc.
These are the cases where ! really grinds my gears.
Perhaps we could relax the rule to say:
Tests for true / false and null / non-null should use if (x) / if (!x) instead
of equality comparisons:
If (ptr)
ptr->func()
Tests for numeric values where 0 indicates falsiness or emptiness should also
use if (x) / if (!x).
If (!collection.size())
return;
Other comparisons to numeric values should use equality comparisons:
if (index == 0)
...
Geoff
_______________________________________________
webkit-dev mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-dev