C ++函数指针语法。为什么(*)可以工作但不是?

时间:2015-11-23 23:26:53

标签: c++ c++11

我正在为一个修复后计算器的作业编写一个程序。如果我可以不使用if语句(没有开关或同时或任何比较)就可以获得奖励积分。我正在阅读有关函数指针的内容,并提出了以下代码:

int main(){
    unordered_map<char,int*(int,int)> m;
    m.insert({'+',[](int const a, int const b){return a+b;}});
}

这不起作用。

但是这样做:

int main(){
    unordered_map<char,int(*)(int,int)> m;
    m.insert({'+',[](int const a, int const b){return a+b;}});
}

为什么(*)*有所不同?

0 个答案:

没有答案