Здравствуйте, Нomunculus, Вы писали:
Pzz>>Сколько ты перед тем написал плюсового кода, не зная, что таких операторов в плюсах нет? Наверное, их нет потому, что они не слишком нужны.
Н>Зато есть офигеть какой нужный spaceship — <=>
Пипец какой. Я не знал.
В принципе, идею понять можно.
if (a < b)
return -1;
if (a > b)
return 1;
returm 0;
Выглядит как-то несимметрично. И такое сравнение с тремя вариантами ответов — это одна ассемблерная команда для целочисленных типов (и еще одна-две, чтобы нормализовать результат). И такое сравнение очень часто встречается.
Но заводить для него еще один мутный оператор...
А почему нет оператора, который возвращает за раз частное и остаток от деления? Тоже тот случай, когда результат даёт одна ассемблерная команда, а по-сишному надо писать две строки (которые развернутся в две одинаковые команды, если компилятор достаточно наивен).