map可以包含类对象还是类对象?
我认为key应该是一个内置的主类型,它的关联数据值可以是类或类对象。
例如,
stl::map<int , myClass> myMap;
myMap.insert(pair<int , myClass>);
密钥是否可以成为自定义类?
stl::map<myClass , int> myMap;
如果是,如何对密钥进行排序?
感谢
答案 0 :(得分:1)
是。 map
的密钥可以是任何具有默认构造函数的密钥,支持复制和比较。默认情况下,map
会将密钥与std::less
比较器进行比较,后者会调用operator <
。因此,如果您为类定义operator <
,或者为地图提供自定义比较类,则可以将其与map
,set
等一起使用。