map 自定义结构体当键值
2018-03-22 15:15
134 查看
使用自定义结构体当map的键值,需要实现比较函数
如:
bool operator<(const T& t1, const T& t2);
这里需要注意的是,比较函数是固定的,不能动态修改比较函数,否则会导致map崩溃。我认为问题在于,map使用的是红黑树结构来存储数据,如果动态修改比较函数,会导致map也跟着变化,而因为红黑树自身的原因会发生崩溃。
如:
bool operator<(const T& t1, const T& t2);
这里需要注意的是,比较函数是固定的,不能动态修改比较函数,否则会导致map崩溃。我认为问题在于,map使用的是红黑树结构来存储数据,如果动态修改比较函数,会导致map也跟着变化,而因为红黑树自身的原因会发生崩溃。
相关文章推荐
- std::map 如何使用结构体作为自定义键值
- 【面试题】sizeof 获取自定义类,结构体,vector,map,string的占内存大小
- map以自定义类型当Key(键值)
- C++ STL map key是自定义结构体或类
- Map以自定义类做为键值
- 【C++】自定义结构体作为map的key
- map 自定义类型作为键值
- 各种Map的区别,想在Map放入自定义顺序的键值对
- map以自定义类型当Key(键值)
- 自定义结构体做为map里面的key的写法
- map以自定义类型当Key(键值)
- map以自定义类型当Key(键值)
- STL: unordered_map 自定义键值类型的使用(C++)
- js中自定义键值对形式的Map结构
- Map以自定义类做为键值
- C++ map以自定义数据类型做键值
- 利用Map集合中的键值对可以查询完…
- Map的put()方法中键值到底是包装类还是基本数据类型
- list转map 键值对
- Map-> hashMap treeMap 以键值对的形式