Я столкнулся с указателем функции C++ 11 с использованием метода std :: function. В результате сценарий отлично работает со старым методом указателя функции, но не с новой вещью.Использование std :: function for function return
#include <functional>
using namespace std;
function<int(int,int)> arithmeticFcn;
int add(int x,int y)
{
return x + y;
}
arithmeticFcn getOperation(char op)
{
switch (op) {
case '+':
return add;
break;
default:
return add;
break;
}
}
int main()
{
int x = 10,y = 20;
char op1;
cin >> op1;
arithmeticFcn Fcn = getOperation(op1);
cout << Fcn(x,y) << endl;
return 0;
}
Я делаю что-то неправильно?
'arithmeticFcn' не называет тип. –
'return; перерыв; '?! «Разрыв» никогда не достигается. –
_ «Следующий сценарий [..] не работает с новой вещью». _ Это не приемлемое описание проблемы. –