Получение ошибки C2064: термин не оценивает функцию, принимающую 2 аргумента

Я получаю эту ошибку

Ошибка 5 ошибка C2064: термин не оценивает функцию, принимающую 2 аргумента C: \ Program Files (x86) \ Microsoft Visual Studio 11.0 \ VC \ include \ xrefwrap 431 1

после попытки сделать это

typedef std::function<int(int, int)> op;op someOperator = std::plus<int>();
op someOtherOperator = std::minus<int>();

так что я могу вызвать такую ​​функцию, как

UpdateValues(int X, int Y, op One, op Two)
{
//eventually doing something like
One(X, someOtherInt);
Two(Y, someOtherInt);
}

Что здесь происходит?

Вот ссылка на мои файлы, если они вам нужны https://www.dropbox.com/s/vn2akcyb9f448e6/Checkers.rar?dl=0

0

Решение

Большое спасибо за ваш ответ vsoftco, в итоге были три отдельные вещи, которые продолжали генерировать эту ошибку:

Я передавал объект op вместо параметра bool
Я передавал объект op * вместо параметра op
Я передавал объект op вместо параметра op *

0

Другие решения


По вопросам рекламы [email protected]