set 容器提供了多个构造函数用来创建 set,我们要创建一个 set 容器有三种方式,即直接创建一个 set、创建一个 set 并初始化和通过 set 创建 set。
std::set<type> values;
参数 | 描述 |
---|---|
type | set 中每个元素的类型。 |
values | set 类型的变量。 |
这样,我们创建了一个空的 set,其值为 type 类型。
std::set<type> values {val1, val2, val3};
参数 | 描述 |
---|---|
type | set 中每个元素的类型。 |
val1 | set 中每个元素的值。 |
val2 | set 中每个元素的值。 |
val3 | set 中每个元素的值。 |
values | set 类型的变量。 |
这样,我们创建了一个 set,其中有三个元素,分别为 val1,val2,val3。
std::set<type> value2(value1);
参数 | 描述 |
---|---|
type | set 中每个元素的类型。 |
value2 | set 元素变量。 |
value1 | set 元素变量。 |
我们使用了 value1 初始化了 value2。
创建一个 set,并初始化
#include <iostream>
#include <set>
using namespace std;
int main()
{
cout << "嗨客网(www.haicoder.net)\n" << endl;
set<string> set1{"HaiCoder", "www.haicoder.net"};
for (auto i = set1.begin(); i != set1.end(); i++)
{
cout << *i << endl;
}
return 0;
}
因为,这里需要使用 C++ 11,因此,我们在 Linux 下使用 g++ 进行编译,具体命令如下:
g++ set.cpp -std=c++11
编译后,我们直接运行生成的二进制文件 a.out
,如下图所示:
我们创建了并初始化了一个 set,最后,使用迭代器遍历了所有元素。
创建一个 set,并使用 set 初始化 set
#include <iostream>
#include <set>
using namespace std;
int main()
{
cout << "嗨客网(www.haicoder.net)\n" << endl;
set<string> set1{"haicoder", "www.haicoder.net"};
set<string> set2(set1);
for (auto i = set2.begin(); i != set2.end(); i++)
{
cout << *i << endl;
}
return 0;
}
编译后,我们直接运行生成的二进制文件 a.out
,如下图所示:
我们首先创建了一个 set,接着,使用了 set 创建了另一个 set。
set 容器提供了多个构造函数用来创建 set,我们要创建一个 set 容器有三种方式,即直接创建一个 set、创建一个 set 并初始化和通过 set 创建 set。