Вопросы по теме 'spaceship-operator'
Почему оператор космического корабля имеет только один знак равенства?
Почему для оператора космического корабля <=> был выбран один знак равенства, а не два? Считается ли это несовместимым с тем, что один знак равенства обычно означает присваивание, а два — сравнение?
521 просмотров
schedule
26.06.2022
Как связать оператор космического корабля groovy для многоуровневой сортировки?
В Groovy есть оператор космического корабля <=> , который обеспечивает простой способ реализации сравнений. Как я могу связать его более плавным образом, чем код ниже? В этом примере я хочу сначала сравнить товары по цене, а затем по имени,...
1825 просмотров
schedule
19.08.2023
Чем оператор трехстороннего сравнения отличается от вычитания?
В C ++ 20 появился новый оператор сравнения <=> . Однако я думаю, что в большинстве случаев хорошо работает простое вычитание:
int my_strcmp(const char *a, const char *b) {
while (*a == *b && *a != 0 && *b != 0) {...
11617 просмотров
schedule
26.09.2023
Трехстороннее сравнение заменяет все остальные операторы сравнения, кроме ==?
В g ++ 10 я пытаюсь использовать трехстороннее сравнение просто для эксперимента.
Я читал, что другие операторы больше не нужны (кроме ==).
Но даже если я могу использовать оператор (он реализован в компиляторе), он не заменяет (и не...
151 просмотров
schedule
04.12.2023
Переписаны операторы сравнения и шаблоны выражений.
У меня есть библиотека конечного объема, на которую сильно повлиял openfoam , что позволяет писать решение задач механики сплошных сред на C++ так же, как на бумаге. Например, чтобы решить уравнение Навье-Стокса для несжимаемого ламинарного...
207 просмотров
schedule
16.04.2022
Почему оператор космического корабля не позволяет мне выполнять операцию равенства, но разрешает операции неравенства?
Кто-нибудь знает, почему я получаю ошибку компилятора для операции равенства в классе, который имеет переопределение трехстороннего оператора? Я использую VS 2019.
class Rectangle
{
public:
constexpr Rectangle(const int width, const int...
50 просмотров
schedule
23.08.2022
Трехсторонний оператор ‹=› структура возврата с неявной функцией преобразования
Рассмотрим следующий бесполезный код:
struct S{
constexpr operator int() const { return 0; }
constexpr auto operator<=>(S) const { return *this; }
};
static_assert(S{} <= S{});
Clang и MSVC принимают этот код, но GCC отклоняет...
164 просмотров
schedule
06.04.2022