美文网首页
rust小结

rust小结

作者: admos | 来源:发表于2016-07-20 10:12 被阅读60次

rust有一些有别于其他语言的地方,本文作为一个集子,收集一些微小的,在ruts中应该是常识的,但是在其他语言中却很怪异的语法

let coll = vec![2,3,1,1,1];

    for i in coll{
        println!("coll:{}",coll[i]);
    }

这段代码coll[i]是各coll[2],coll[3]...但是会报错,因为for in迭代器已经借用了coll

vec!声明出来的应该是一个结构体

![Uploading Paste_Image_056474.png . . .]
rust的闭包对它所在环境的变量构成一个引用,(如果它用了这个变量的话),尽管没有以&的形式去引用,实际上它是构成了一个隐含的不可变引用

rust想要执行的闭包都是可变变量声明的

move闭包会使用移动语义而不是借用

move语义会把栈上的数据进行移动 如果栈里的数据含有指针(外部数据),那么指针会整个被move走,而不是共享一份,即便是你只是读取(应该使用引用)

相关文章

网友评论

      本文标题:rust小结

      本文链接:https://www.haomeiwen.com/subject/stjvjttx.html