Boost C++ 库

...世界上最受推崇和设计精良的 C++ 库项目之一。 Herb SutterAndrei Alexandrescu,《C++ 编码规范

函数模板 unique - Boost C++ 函数库
PrevUpHomeNext

函数模板 unique

boost::movelib::unique

提要

// In header: <boost/move/algo/unique.hpp>


template<typename ForwardIterator, typename BinaryPredicate> 
  ForwardIterator 
  unique(ForwardIterator first, ForwardIterator last, BinaryPredicate pred);

描述

要求:比较函数必须是等价关系。*first 的类型必须满足 MoveAssignable 要求。

效果:对于非空范围,消除范围 [first + 1, last) 中每组连续等价元素,除了第一个元素之外,这些元素满足以下条件:pred(*(i - 1), *i) != false。

返回值:结果范围的结束位置。

复杂度:对于非空范围,谓词应用的次数恰好为 (last - first) - 1。


PrevUpHomeNext