Rust swap

文章目录

rust 复制代码
    /*fn swap<'a>(a: &'a mut String, b:&'a mut String){
        let tmp = *a;
        *a = *b;
        *b = tmp;
    }
    
    let mut a = "aaa".to_string();
    let mut b = "bbb".to_string();
    
    swap(&mut a, &mut b);*/


    let mut a = 111;
    let mut b = 222;
    
    fn swap<'a>(a: &'a mut i32, b:&'a mut i32){
        let tmp = *a;
        *a = *b;
        *b = tmp;
    }


    /*
    fn swap(mut a:  i32, mut b:  i32){
        let tmp = a;
        a = b;
        b = tmp;
    }
    swap( a,  b);
    */
    
    swap(&mut a, &mut b);

最高效方式

rust 复制代码
    let mut a = "aaa".to_string();
    let mut b = "bbb".to_string();
    
    std::mem::swap(&mut a, &mut b);
相关推荐
C++ 老炮儿的技术栈几秒前
什么是通信规约
开发语言·数据结构·c++·windows·算法·安全·链表
@大迁世界4 分钟前
TypeScript 的本质并非类型,而是信任
开发语言·前端·javascript·typescript·ecmascript
栗子叶9 分钟前
Java对象创建的过程
java·开发语言·jvm
勇哥java实战分享14 分钟前
短信平台 Pro 版本 ,比开源版本更强大
后端
Amumu1213818 分钟前
React面向组件编程
开发语言·前端·javascript
学历真的很重要18 分钟前
LangChain V1.0 Context Engineering(上下文工程)详细指南
人工智能·后端·学习·语言模型·面试·职场和发展·langchain
IT=>小脑虎19 分钟前
Python零基础衔接进阶知识点【详解版】
开发语言·人工智能·python
wjs202421 分钟前
C 标准库 - `<float.h>》详解
开发语言
计算机毕设VX:Fegn089521 分钟前
计算机毕业设计|基于springboot + vue二手家电管理系统(源码+数据库+文档)
vue.js·spring boot·后端·课程设计
zfj32128 分钟前
CyclicBarrier、CountDownLatch、Semaphore 各自的作用和用法区别
java·开发语言·countdownlatch·semaphore·cyclicbarrier