如何将方法指针存储在像std :: map这样的STL容器中?

时间:2019-01-25 13:19:03

标签: c++

我应该如何在std :: map中存储类的方法? 如果地图是类的成员,那么如何在构造函数中对其进行初始化?

class c 
{
public:
    const std::map<int, void(*)(c*, int)> m;
    c() : m({ {1, &c::printHigher}, {2, &c::printLower} }) { }

    void printHigher(int num) { std::cout << num + 1; }
    void printLower(int num) { std::cout << num - 1; }
};

我做不到的方式,出现编译错误。如果有人能帮助我,我会很高兴。

0 个答案:

没有答案