📅  最后修改于: 2023-12-03 14:59:47.066000             🧑  作者: Mango
unordered_set
是C++ STL中的一个容器,它是用哈希表实现的一种无序集合。在实际开发中,我们经常需要对两个unordered_set
进行赋值操作,这时候就需要使用运算符=
。
在C++中,=
是一种运算符,可以用于对unordered_set
进行赋值操作。=
运算符的重载方式如下:
unordered_set& operator=(const unordered_set& other);
此重载运算符将左侧unordered_set
对象赋值为右侧unordered_set
对象。它接受一个unordered_set
对象作为参数,返回一个对当前对象的引用。这是因为赋值操作通常会在链式表达式中使用,所以需要返回对当前对象的引用。
下面是一个示例程序,展示了如何使用运算符=
对两个unordered_set
进行赋值操作:
#include <iostream>
#include <string>
#include <unordered_set>
using namespace std;
int main()
{
// 创建两个unordered_set
unordered_set<string> set1 = {"John", "Mary", "Alice"};
unordered_set<string> set2 = {"Tom", "Jerry"};
// 使用运算符=将set2赋值给set1
set1 = set2;
// 输出set1
for (auto& e : set1)
{
cout << e << " ";
}
cout << endl;
return 0;
}
输出结果为:
Jerry Tom
运算符=
是C++ STL中的一个重要运算符,用于对unordered_set
容器进行赋值操作。使用运算符=
可以简化代码,提高程序的开发效率。在使用运算符=
的时候要注意,左右两个unordered_set
的类型必须相同,否则编译器会报错。