Я получаю ошибку, когда пытаюсь сравнить два целых числа в Qt.
if ((modus==2) & (move != -1)) error: invalid operands of types '<unresolved overloaded function type>' and 'int' to binary 'operator!='
Нужны ли другие операторы?Я гуглил, но похоже, что Qt использует то же самое.Спасибо за ваши ansers
Вы должны использовать && для операции and:
if ((modus==2) && (move != -1))
Если вы используете компилятор C ++ 0x, move может конфликтовать с std::move().Я думаю, что это то, что вызывает «неразрешенную перегруженную функцию» часть сообщения об ошибке.
move
std::move()
Спасибо тебе, но я нашел это. Переменная «ход» принадлежит QPoint или что-то вроде этого. Я просто переименовал свою переменную, и все идет хорошо. В любом случае, спасибо.
Оператор, который вы используете (&), является «двоичным и», а не «логическим и», как вы, кажется, хотите (&&).Предполагая, что 'modus' и 'move' имеют тип int, все должно работать нормально:
if (modus==2 && move!=-1) { // stuff }