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);
相关推荐
桦说编程6 小时前
并发编程中的等待-通知模式:从 wait/notify 到 Guava Monitor
后端
hsjiasb6 小时前
FreeRTOS学习(二十七)——任务栈与栈溢出检测
开发语言·stm32·学习·学习笔记·freertos
丰锋ff7 小时前
3.1 Qt事件之事件处理器
开发语言·qt
多弗朗皮卡丘7 小时前
C语言梦开始的地方7:函数
c语言·开发语言
月华路7 小时前
G1 垃圾回收:脏卡队列、记忆集与并发精化线程机制
java·开发语言
用户938515635077 小时前
工厂模式与 Nest.js 核心思想 —— 从蜜雪冰城到企业级架构
后端·设计模式·nestjs
用户938515635078 小时前
实战 Todo CRUD —— 从路由到异常,手写一个完整模块
后端·typescript·nestjs
gugucoding8 小时前
47. 【Java】Java内存模型(JMM)与可见性
java·开发语言
m0_380743878 小时前
从零调用 Claude 教程
开发语言·python·node.js
GetcharZp8 小时前
Qdrant 向量数据库 Golang 实战指南:从零构建高性能检索应用
后端