C++ set swap()

30 Aug 2024 | 3 分钟阅读

C++ swap() 函数用于交换两个 set 的内容,但两个 set 必须是相同类型,尽管它们的大小可以不同。

语法

参数

x: 要与之交换内容的 set 容器。

返回值

复杂度

常量。

迭代器有效性

所有指向两个 set 容器中元素的引用、迭代器和指针仍然有效,但现在它们指向另一个 set 容器中的元素,并在其中进行迭代。

数据竞争

容器和 x 都会被修改。

异常安全

如果抛出异常,对容器没有影响。

示例 1

让我们看一个将一个 set 的元素交换到另一个 set 的简单示例。

输出

Set contains following elements
1
2
3
4
5

在上面的示例中,set m1 有五个元素,而 m2 是空的。当您将 m1 与 m2 交换时,m1 的所有元素都被交换到 m2 中。

示例 2

让我们看一个交换两个 set 内容的简单示例。

输出

first set contains: 40 50 60
second set contains: 10 20 30

示例 3

让我们看一个交换两个 set 内容的简单示例。

输出

set1:
	x
	y
	z
set2:
	a
	b
	c
	d

在上面的示例中,使用了另一种形式的 swap() 函数来交换两个 set 的内容。

示例 4

让我们看一个简单的例子

输出

The original set s1 is: 10 20 30.
After swapping with s2, list s1 is: 100 200.
After swapping with s3, list s1 is: 300.

下一主题Set clear() 函数