当前位置: 首页 > wzjs >正文

网络服务商网站如何优化培训方式

网络服务商网站,如何优化培训方式,销售网站后台维护怎么做,手机应用开发教程目录 一、概述 二、借用规则 三、详细解释 3.1 第一条规则 3.2 第二条规则 3.3 第三条规则 四、总结 Welcome to Code Blocks blog 本篇文章主要介绍了 [Rust-引用借用规则] ❤博主广交技术好友,喜欢文章的可以关注一下❤ 一、概述 Rust为确保程序在运行时不…

目录

一、概述

二、借用规则

三、详细解释

3.1 第一条规则

3.2 第二条规则

3.3 第三条规则

四、总结


Welcome to Code Block's blog

本篇文章主要介绍了

[Rust-引用借用规则]
❤博主广交技术好友,喜欢文章的可以关注一下❤

一、概述

        Rust为确保程序在运行时不会出现数据竞争和其他内存安全,在使用引用时有很多规则,我在第一眼看到这些规则时也是有些头大,看了一段时间后才有了一些自己的一些理解。在这里对一些官方的术语和借用规则进行解释和记录。

二、借用规则

  • 同一时间可以有多个不可变引用​​(&T)。
  • ​同一时间只能有一个可变引用​​(&mut T)。
  • ​不可变引用和可变引用不能同时存在​​。

上面为官方的解释,难理解的问题出现在这个同一时间,怎么才算同一时间。其实这里说的同一时间时指同一生命周期内。

三、详细解释

3.1 第一条规则

        同一时间内可以有多个不可变引用(&T)。即在同一个范围的生命周期内,可以包含多个不可变的引用。

-------------------------------

|不可变引用A

|

|其它不可变引用

|

|使用不可变引用A

--------------------------------

如上图, 在不可变引用A的作用生命周期内,可以创建和使用多个不可变引用。实例代码:

    let A = 1;//不可变引用alet a = &A;//其它不可变引用let b = &A;//....//使用不可变引用aprintln!("{}", &a);

3.2 第二条规则

        同一时间只能有一个可变引用​​(&mut T)。即在同一个生命周期内只能有一个可变引用。

-------------------------------------

//可变引用A

//

//周期内不能包含A的不可变引用

//

//使用可变引用A

------------------------------------
或者

------------------------------------

//不可变引用A

//

//任何A的可变引用

//

//使用不可变引用A
-------------------------------------

        如上图,在可变引用A的生命周期内,不能包含A的任何不可变引用。或者在不可变引用A的生命周期内不能包含任何可变A的可变引用

第一种情况:

    let mut A = 1;//可变引用alet a = &mut A;//其它不可变引用let b = &A;//....//使用可变引用aprintln!("{}", &a);

第二种情况:

    let mut A = 1;//不可变引用alet a = &A;//其它可变引用let b = &mut A;//....//使用不可变引用aprintln!("{}", &a);

3.3 第三条规则

        不可变引用和可变引用不能同时存在​​。

        其实可以理解为对第二条规则的总结,不能同时存在即在同一个生命周期内不能同时存在对A的不可变引用和可变引用。

:对引用解引用即获取该引用的数据对象,如果再次引用即为借引用。这里需要注意对任何解引用的借引用都为不可变引用。

如下:

    let mut A = 1;//可变引用alet a = &mut A;//引用b为不可变引用let b = & *a; //借引用a

这里a为可变引用,b借引用a,但是b为不可变引用。生命周期内同样需要满足上述借用规则。 

四、总结

        Rust的借用规则虽然初看起来复杂,但通过合理组织代码结构和生命周期,可以有效地防止数据竞争和内存错误。理解“同一生命周期”的概念,以及如何在该生命周期内管理不可变和可变引用的使用,是掌握Rust借用系统的关键。这不仅提升了代码的安全性,也为编写高效的并发程序奠定了基础。随着对Rust的深入学习和实践,这些规则将逐渐成为编写稳健代码的自然习惯。

如果你对区块链内容感兴趣可以查看我的专栏:小试牛刀-区块链

感谢您的关注和收藏!!!!!!

http://www.dtcms.com/wzjs/328585.html

相关文章:

  • 沈阳网页设计课seo发展前景怎么样啊
  • 重庆网站目录全国各大新闻网站投稿
  • 有趣的网站代码公司网站制作流程
  • 制作网站的代码做百度推广怎么做才能有电话
  • 怎样做类似淘宝的网站营销战略
  • 盛大印刷公司网页设计seo网站怎么搭建
  • 王也诸葛青cp图合肥seo快排扣费
  • wordpress 免费建站网络营销解释
  • dede网站微信分享封面河南靠谱seo电话
  • 网站主服务器ip地址seo技术教程
  • 中国保密在线培训网站市场营销专业
  • wordpress个性化seo的中文含义是
  • 兰溪建设局网站南昌百度快速排名提升
  • 翻译网站平台建设chatgpt 链接
  • 网站建设公司如何收费百度指数的网址
  • 建行赤峰市分行 - 欢迎访问中国建设银行网站seo网上培训多少钱
  • 广州网站建设公司乐云seo598windows优化大师值得买吗
  • 网站上的招牌图怎么做自动交换友情链接
  • 购物网站创业时是如何做宣传的seo优化教学视频
  • 产品网站 模板公司网站设计图
  • 如何建一个个人的网站网站建站教程
  • wordpress去除底部重庆seo整站优化效果
  • 网站设计是后台做的还是前台做的网站seo综合诊断
  • 网站建设经营范围在线crm网站
  • 网站的301重定向怎么做网站怎么做推广和宣传
  • 做日本假货的在什么网站卖好动态网站设计
  • 江都建设上海公司网站app推广项目
  • 一定要用c 做网站吗中国搜索引擎大全
  • 欧美 手机网站模板下载 迅雷下载 迅雷下载地址武汉百度推广入口
  • 德州手机网站建设费用seo好学吗