工作上遇到一些set的使用问题,上网查了一下set的用法,大多数被称为“STL set学习笔记”的文章,几乎都照搬C++ primer上的介绍。此书一直在手边,作为一本工具书,却总是不能解决我太多的问题,除了简单的概念问题。。。
终于找到一篇<STL set随笔>,基本算是能解决我的问题。根据自己的情况,写了一些代码验证,总结如下:
1. set容器是有序的
因此,向容器中插入数据时(insert),set容器会根据 operator<() 操作符进行排序。
对于C++内置类型排序是没有问题的,但对于自定义的数据类型(struct or class)set容器就无法自动排序了,需要重载一下 operator<。
2. Linux OS中,stl_set.h里定义了set 容器的原型:
template<class _Key, cl