📜  C++ STL-list.unique()函数

📅  最后修改于: 2020-10-18 03:34:08             🧑  作者: Mango

C++ STL List.unique()

C++ List unique()函数从列表中删除连续出现的所有重复元素。

句法

void unique();
void unique(BinaryPredicate pred);

参数

pred:这是一个二进制谓词,采用两个相同类型的值。如果两个值相等,则返回true,否则返回false。

谓词函数的语法为:

bool pred( type1 &x, type2 &y);

返回值

它不返回任何值。

例子1

让我们看一个简单的例子

#include 
#include
using namespace std;
int main()
{
 list l1={'j','a','a','v','v','a'};
 list ::iterator itr;
 l1.unique();
  for(itr=l1.begin();itr!=l1.end();++itr)
  std::cout << *itr << " ";
    return 0;
}

输出:

java

例子2

让我们看一个简单的示例,将谓词函数传递给参数。

#include 
#include
using namespace std;
bool pred( float x,float y)
{
    return(int(x)==int(y));
}
int main()
{
 list l1={12,12.5,12.4,13.1,13.5,14.7,15.5};
 list ::iterator itr;
 l1.unique(pred);
 for(itr=l1.begin();itr!=l1.end();++itr)
 std::cout << *itr << ", ";
 return 0;
}

输出:

12 ,13.1,14.7,15.5