このタイプのマップを埋める方法と、主に関数ポインターにアクセスする方法を知りたいです。
地図 :
enum enum1
{
val11,
val12,
val13
};
enum enum2
{
val21,
val22,
val23
};
typedef void(MyClass::*funcPtr)();
std::map<std::pair<enum1, enum2>, funcPtr> map;
私はこのようにそれを埋めます、それはうまくいくようです:
map.insert(std::make_pair(std::make_pair(val11, val21), &MyClass::init));
しかし、次のような関数にアクセスできません。
map[std::make_pair<val11, val21>]();
私は何を間違っていますか?