如何从列表中删除重复项

时间:2012-08-06 11:49:42

标签: c++ stl

我有自定义类Person,其中仅包含有关人(姓名,姓,身高......)的数据。我有几个指向人的指针列表,如

list<Person*> list1;
list<Person*> list3;
list<Person*> list2;

我连接

使用std::copy()std::back_insert_iterator<std::list<Person*> >

如何从列表中删除重复项(只指向同一块内存的指针,不删除该内存,只删除列表中的指针)?

2 个答案:

答案 0 :(得分:4)

如果您不介意重新排序列表:

list.sort()
list.unique()

答案 1 :(得分:4)

您可以考虑使用集合而不是列表。