std::unique

Posted Kiven#5197

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了std::unique相关的知识,希望对你有一定的参考价值。

 类属性算法unique的作用是从输入序列中“删除”所有相邻的重复元素

该算法删除相邻的重复元素,然后重新排列输入范围内的元素,并且返回一个迭代器(容器的长度没变,只是元素顺序改变了),表示无重复的值范围得结束。

 

 1 template <class ForwardIterator>
 2   ForwardIterator unique (ForwardIterator first, ForwardIterator last)
 3 {
 4   if (first==last) return last;
 5 
 6   ForwardIterator result = first;
 7   while (++first != last)
 8   {
 9     if (!(*result == *first))  // or: if (!pred(*result,*first)) for version (2)
10       *(++result)=*first;
11   }
12   return ++result;
13 }

 

以上是关于std::unique的主要内容,如果未能解决你的问题,请参考以下文章

比较 std::unique_ptr 指向的底层(派生)类型

错误:使用已删除的函数‘std::unique_ptr<...> [关闭]

将 std::unique_ptr 传递给 CListBox::GetSelItems

为啥 std::unique_lock 改变 std::unique_ptr?

如何在结构上使用 std::unique_ptr?

Valgrind 在 std::make_unique 中显示内存泄漏