rust--reference和borrow有的区别?

// reference和borrow有什么区别?
//
// reference和borrow其实是一个含义, 但是被拆分成两个单词,
// borrow是指函数运行必备的参数变量, 需要依赖外部提供, 这种参数声明就叫做borrow(借用).


fn reference_example() {
    let a = String::from("reference hello");
    let b = &a;                             // 这是引用: reference.
    println!("a: {}, b: {}", a, b)
}


fn borrow_example() {
    let a = String::from("borrow hello");

    fn print(msg: &String) {                              // 这是借用: borrow
        println!("{:?}", msg)
    }

    print(&a)
}


fn main() {
    reference_example();
    borrow_example();
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容