std::map 是 C++ 标准库中的一个关联容器,它存储的元素是唯一的,并且根据键(key)的值自动排序。对于 std::map 容器,了解其大小和交换操作是非常重要的。
std::map 的大小
std::map 容器提供了一个成员函数 size() 来获取容器中元素的数量。这个函数返回一个无符号整数类型(通常是 size_t),表示当前存储在容器中的元素个数。
示例代码
在上面的代码中,我们创建了一个空的 std::map 容器 myMap,然后插入了三个元素。我们使用 size() 成员函数来检查并输出容器的大小,并使用 empty() 成员函数来检查容器是否为空。
std::map 的交换
std::map 提供了一个 swap() 成员函数,用于交换两个 map 容器的元素。这个操作是常数时间的,因为它仅仅交换了两个容器的内部指针,而不是实际复制元素。因此,对于大型容器,swap() 通常比逐个复制元素更加高效。
示例代码
在上面的代码中,我们创建了两个 std::map 容器 map1 和 map2,并分别初始化了它们。然后,我们使用 swap() 成员函数交换了这两个容器的元素,并输出了交换前后的内容。可以看到,交换后 map1 包含了原本 map2 的元素,而 map2 包含了原本 map1 的元素。
讲解
大小:size() 函数是 std::map 容器提供的一个非常有用的成员函数,它允许我们在不遍历整个容器的情况下快速确定容器中元素的数量。这对于很多算法和逻辑判断都是非常重要的。