c ++:带有键的地图

时间:2014-08-08 22:37:55

标签: c++ functional-programming

我是新手和c ++,我想问一下数学中是否存在类似函数的数据结构(域函数和范围是其他函数的函数):

map<map,int>

1 个答案:

答案 0 :(得分:1)

std::map模板要求Key为有序类型。但是std::map默认情况下不是自己订购的,你必须自己定义一些订单。

C++11还有std::functionalanonymous functions,即lambda表达式。

也许你可以拥有

typedef std::map<int,int> first_order_map_t;
// you have to implement:
bool operator <(const first_order_map_t&, const first_order_map_t&); 
// then you could use
typedef std::map<first_order_map_t,int> second_order_map_t;

请记住std::map与计算机中的每个数据结构一样,是有限地图。实际绑定键的集合是有限的!

我不确定这种方法是否有效。阅读最近的一些Stroustrup book,例如a Tour of C++