我有一个boost :: ptr_vector,我想保持按排序顺序维护。
我正在创建一堆包含几个简单字符串和值的Customer对象,然后将它们存储在boost :: ptr_vector中,并且需要按其中一个字符串对它们进行排序。
我环顾四周,但似乎无法找到有关boost :: ptr_vector成员函数的大量信息,但似乎有一个名为sort(),我认为这与我正在尝试做的有关,但是有没有太多关于此功能使用的信息。
是否有一个“insert in order”类型函数可用于boost :: ptr_vector?或者我是否需要将所有内容加载到向量中然后再进行排序?
任何帮助将不胜感激 感谢
答案 0 :(得分:2)
你问的ptr_vector
太多了。 ptr_vector
只是std::vector
的包装器。同样,存在stdlib数据结构的其他包装器。
始终排序(通过执行排序插入)的数据结构是std::set
。要使用该功能,您可以使用boost::ptr_set
。见这里:http://www.boost.org/doc/libs/1_54_0/libs/ptr_container/doc/ptr_set.html