Здравствуйте, serg_joker, Вы писали:
_>В С++ можно терять такты процессора, если задача позволяет. _>Но если задача не позволяет, то должен быть способ выразить всё то же самое, но эффективно. Предложенное тобой ограничение по операторам может очевидным образом этому препятствовать.
Может препятствовать.
Я хочу сказать, что очень бы было желательно, чтобы операции сравнения были алгебраичны. В том смысле, что a < b равносильно b > a и равносильно !(a >= b). И из a < b && b < c следует, что a < c.
И это важнее, чем несколько тактов процессора.
Очень редко бывает так, чтобы требования быстроты и сложности применялись к коду одновременно. И там, где есть требование быстроты, можно поднапрячься и обойтись без перегрузки операторов — скорее всего, речь идёт о небольшой доле кода.
А вот в сложном коде язык должен помогать, а не усложнять жизнь. И ради этого можно пожертвовать несколькими тактами процессора.