Android常用C++特性之std::swap

声明:本文内容生成自ChatGPT,目的是为方便大家了解学习作为引用到作者的其他文章中。

std::swap 是 C++ 标准库中提供的一个函数,位于 <utility> 头文件中。它用于交换两个变量的值。

语法:

cpp 复制代码
#include <utility>

std::swap(a, b);

参数:

  • a:第一个变量。
  • b:第二个变量。

示例:

cpp 复制代码
#include <iostream>
#include <utility> // 使用 std::swap

int main() {
    int x = 10;
    int y = 20;

    std::cout << "交换前: x = " << x << ", y = " << y << std::endl;

    std::swap(x, y); // 交换 x 和 y 的值

    std::cout << "交换后: x = " << x << ", y = " << y << std::endl;

    return 0;
}

输出:

vbnet 复制代码
交换前: x = 10, y = 20
交换后: x = 20, y = 10

解释:

  • std::swap(x, y) 函数用于交换 xy 的值。
  • 它适用于基础数据类型以及用户定义的类型,只要这些类型有可访问的复制或移动构造函数和赋值运算符。

这个函数常用于需要交换元素的算法和工具函数中(例如排序算法)。

相关推荐
-To be number.wan1 小时前
C++ 赋值运算符重载:深拷贝 vs 浅拷贝的生死线!
前端·c++
XXYBMOOO3 小时前
内核驱动开发与用户级驱动开发:深度对比与应用场景解析
linux·c++·驱动开发·嵌入式硬件·fpga开发·硬件工程
SoveTingღ6 小时前
【问题解析】我的客户端与服务器交互无响应了?
服务器·c++·qt·tcp
温宇飞7 小时前
内存异常
c++
挖矿大亨9 小时前
C++中深拷贝与浅拷贝的原理
开发语言·c++·算法
Bruce_kaizy9 小时前
c++图论——生成树之Kruskal&Prim算法
c++·算法·图论
雾岛听蓝10 小时前
C++:模拟实现string类
开发语言·c++
XFF不秃头10 小时前
力扣刷题笔记-合并区间
c++·笔记·算法·leetcode
编程之路,妙趣横生10 小时前
STL(七) unordered_set 与 unordered_map 基本用法 + 模拟实现
c++
寂柒11 小时前
c++--
c++