其他分享
首页 > 其他分享> > STL学习之mismatch();

STL学习之mismatch();

作者:互联网

std::mismatch

定义于头文件 <algorithm>

一、定义:(共八种定义方式,一开始先了解两种即可)

1.

template< class InputIt1, class InputIt2 >

constexpr   std::pair<InputIt1,InputIt2>     mismatch( InputIt1 first1, InputIt1 last1,InputIt2 first2 );//constexpr关键字在很早就出来了,但是直到C++20才开始在STL中使用,所有声明之前都有

2.

template< class InputIt1, class InputIt2 >

constexpr std::pair<InputIt1,InputIt2>       mismatch( InputIt1 first1, InputIt1 last1,InputIt2 first2, InputIt2 last2 );

这两者有什么差别呢?

首先我们要知道正常情况下,这个函数是找到两个容器里面的值不匹配的迭代器并且返回,返回的是指向二个不相等元素的迭代器的 std::pair,对,是两个迭代器,分别指向前后两个容器。

当没有InputIt2 last2 返回来自二个范围:一个以 [first1, last1) 定义而另一个以 [first2,last2) 定义,的首个不匹配对。若不提供 last2 ,则它指代 first2 + (last1 - first1) 。

二、注意事项:

对于 第一种:


对于第二种:

标签:InputIt1,STL,mismatch,学习,pair,last1,last2,序列
来源: https://www.cnblogs.com/working-in-heart/p/12231635.html