equal用于比较两个序列是否相等,也可以自定义比较条件;
如果两个序列的长度不相等则返回false;
如果B序列的长度比A序列大,可以不用指定B序列的结束位置;
如果A序列的长度比B序列大,则需要指定A序列的结束位置,使AB序列的长度相等。
#include <algorithm>
#include <iostream>
#include <string>
#include <vector>
using namespace std;
bool comp(int i, int j) { return i < j; }
int main()
{
vector<string> v{ "a","b","c","d","e","f" };
vector<string> v2{ "b","c","d","e","g","h","i" };
vector<string> v3{ "a","b","c","d" };
cout << equal(v.begin(), v.end(), v2.begin()) << endl;
cout << equal(v.begin() + 1, v.end() - 1, v2.begin()) << endl;
cout << equal(v.begin() + 1, v.end() - 1, v2.begin(), v2.end() - 3) << endl;
cout << equal(v.begin(), v.end() - 2, v3.begin()) << endl;
vector<int> v4{ 1,2,3,4,5 };
vector<int> v5{ 2,3,4,5,6,7 };
cout << equal(v4.begin(), v4.end(), v5.begin(), comp) << endl;
return 0;
}
输出结果:
0
1
1
1
1
本文详细介绍了C++标准库中的equal函数用法,包括不同序列长度间的比较方式及自定义比较条件的应用。通过具体示例展示了如何使用equal函数来判断两个序列是否相等。
4544

被折叠的 条评论
为什么被折叠?



