-4
我遇到了使用std :: function方法的C++ 11風格的函數指針。以下場景可以很好地使用舊函數指針方法,但是會失敗,並且會失敗。使用std :: function函數返回
#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;打破;'? 'break'永遠不會到達。 –
_「以下情況[..]以新thingie失敗。」_這不是一個可接受的問題描述。 –