在c++STL中,容器类vector实际上在创建时可以接收两个参数,第一个是存储的元素的类型,第二个是内存配置器,第二个参数有默认值,但我们可以覆盖这个默认值,但是默认值的覆盖需要遵守一些规则,而这些规则则是本文的要讲述的。 创建时添加第二参数:std::vector<int, my::allocator<int>> iv; //创建一个元素类型为...
反之,也可以显式地用greater<Key>作为比较器,此时就必要重载Key类中的“>”操作符了。 附:stl中map和set的声明,二者比较像,底层都是用红黑树实现的 template<classKey,classCompare = less<Key>,classAllocator = allocator<Key> >classset; template<classKey,classT,classCompare = less<Key>,classAllocator ...