rust中文补丁是什么意思

RustPrimer——给初学者的Rust完整中文教程 - 推酷
RustPrimer——给初学者的Rust完整中文教程
RustPrimer
The Rust primer for beginners. 给初学者的Rust中文教程。
在线阅读地址
也可复制以下链接:
https://wayslog.gitbooks.io/rustprimer/content/
Rust语言中文社区
Rust编程语言社区2群
进群必须附带您的github地址,否则不予通过
(使用github验证登录)
本书使用 CC BY-SA 3.0 协议,转载请注明地址。
GitBook 生成
gitbook serve
成为Contributors
我们欢迎RustPrimer的Contributor们将自己的 [blog/github/社交帐号] 添加在1st-glance/README.md里。但严禁未参与者恶意添加帐号,违者将会被永久拒绝PR和issue权限。
日,初稿完成。发布 v1.0 版。
日,完成 1.1.0 版本。
已发表评论数()
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见
正文不准确
标题不准确
排版有问题
主题不准确
没有分页内容
图片无法显示
视频无法显示
与原文不一致第三人称单数:
rust是什么意思,词典释义与在线翻译:
锈色,铁锈色,赭色
【植】锈菌
停滞,无活动,迟钝,惰性
锈迹,铁锈状污渍
【植】害锈病
变呆,变迟钝
锈蚀,锈坏;生锈
【植】使患锈病
[U]铁锈 reddish-brown coating formed on metal by the action of water and air
vt. & vi. (使)生锈 (cause to) become covered with rust
提示:各行业词典APP中含有本词条的独家正版内容,在手机上可看到更多释义内容。
rust&:&锈 ...
在&&中查看更多...
rust&:&锈 ...
在&&中查看更多...
rust&:&铁锈色,赭 ...
在&&中查看更多...
rust&:&锈; ...
在&&中查看更多...
rust&:&锈病 ...
在&&中查看更多...
rust&:&锈菌 ...
在&&中查看更多...
rust&:&锈; ...
在&&中查看更多...
rust&:&铁锈 ...
在&&中查看更多...
a red or brown oxide coating on iron or steel caused by the action of oxygen and moisture
a plant disease that produces a reddish-brown discoloration caused by various rust fungi
the formation of reddish-brown ferric oxides on iron by low-temperature oxidation in the presence of water
any of various fungi causing rust disease in plants
Adjective:
of the brown color of rust
become destroyed by water, air, or a corro
"The metal corroded"
"The pipes rusted"
cause to deteriorate due to the action of water, air,
"The acid corroded the metal"
"The steady dripping of water rusted the metal stopper in the sink"
become coated with oxide
rust的用法和样例:
用作名词 (n.)
The tools will corrode with rust if never used.
这些工具如长期不用会长铁锈而损坏。
Rust is eating away the iron hinge.
铁锈正腐蚀着铁铰链。
The pipes had clogged with rust.
铁锈阻塞了管道。
How can I remove the rust from the iron door?
我怎样才能把铁门上的锈除掉呢?
Asian rust is another factor that could determine the success of Brazil's crop.
亚洲锈菌是决定巴西收成状况的又一因素。
用作不及物动词 (vi.)
Iron exposed to damp air will rust.
放在空气潮湿地方的铁会生锈。
We have developed a steel that will not rust.
我们已经研制出一种不会生锈的钢。
用作及物动词 (vt.)
The rain will rust the iron roof.
雨水将使铁皮屋顶生锈。
用作名词 (n.)
Iron gathers rust easily.
铁易生锈。
The mower is covered with rust.
割草机布满了锈。
用作动词 (v.)
用作不及物动词
My bike has rusted and needs oil.
我的自行车生锈了,需要上油。
用作及物动词
S+~+ n./pron.
The rain will rust the iron roof.
雨水会使铁皮屋顶生锈。
工业衰退地带...
烟叶斑点病,赤锈病,...
杆锈病,黑锈病...
锈接,天沟水密接头...
铁管接合油泥,防锈油...
抗腐蚀添加剂,防锈剂...
除锈,除锈器...
白锈,白锈病...
The..wires..had become corroded by rust.
出自:H. Douglas
A metal roof, eaten in places by rust.
出自:D. Profumo
rust的海词问答与网友补充:
rust的相关资料:
rust&:&铁锈, 铁 ...
在&&中查看更多...
rust&:&铁锈,锈, ...
在&&中查看更多...
【近义词】
氧化(反应)...
分解,拆分,拆解...
(印花)白地沾色...
生锈(布满铜绿)...
枯萎,干枯
筋疲力尽,丧失元气...
变坏(每况愈下...
侵蚀, 困扰
在 ... 的上方...
rusty adj. 生锈的; 荒疏的‖rustily adv. 生锈地;荒疏地‖rustiness n. 生锈;荒疏
rust的相关缩略词,共有4条
RCRA地下储罐(EPA)
远程用户调度的终端
在蒙大拿州的恒星轨道滑雪/滑雪活动
rust:rust n. 铁锈vt. (使)生锈…
相关词典网站:制作公司:Facepunch Studios
发行公司:Facepunch Studios
游戏平台:PC
游戏类型:
发售日期: +
游戏标签:
用户打分(票)
你的分数(滑动率)
  《Rust》是采用Unity 3D引擎制作的一款丧尸类生存网络游戏,游戏是采取PVP(player vs player)方式,玩家看见其他玩家的时候,可以选择结伴、无视、或是直接杀了对方,抢夺其身上的任何资源。游戏除了注重战斗部分外,还拥有非常丰富的生存要素。玩家在游戏中除了要防范动物、僵尸、玩家的袭击,并依靠各类物品进行生存。
没有任何记录
没有任何记录
没有任何记录
没有任何记录
没有任何记录
游戏类型:生存恐怖
游戏平台:PC/XboxOne/PS4
发售日期: +
游戏类型:动作冒险
游戏平台:PC/XboxOne/PS4
发售日期: +
游戏类型:动作冒险
游戏平台:PC/XboxOne/PS4
发售日期: +
游戏类型:动作冒险
游戏平台:PC/XboxOne
发售日期: +
游戏类型:动作冒险
游戏平台:WiiU
发售日期:
游戏类型:动作
游戏平台:PS4
发售日期: +
游戏类型:动作
游戏平台:PC/XboxOne/PS4
发售日期: +
游戏类型:动作
游戏平台:PS4/PSVita
发售日期: +
游戏类型:动作
游戏平台:PS4
发售日期: +
游戏类型:动作
游戏平台:PC/PS3/PS4/PSVita
发售日期: +
游戏类型:动作
游戏平台:XboxOne/PS4
发售日期: +
游戏类型:动作角色扮演
游戏平台:PC/PS4
发售日期: +
游戏类型:动作冒险
游戏平台:PC/XboxOne
发售日期: +
游戏类型:第三人称射击
游戏平台:PC/XboxOne/PS4
发售日期: +
游戏类型:动作角色扮演
游戏平台:PC/XboxOne/PS4
发售日期: +
游戏类型:动作冒险
游戏平台:WiiU
发售日期:
游戏类型:动作
游戏平台:PS4
发售日期: +
游戏类型:动作
游戏平台:PC/XboxOne/PS4
发售日期: +
游戏类型:冒险
游戏平台:PC/XboxOne/PS4
发售日期:
游戏类型:动作
游戏平台:PS4
发售日期: +
游戏类型:动作
游戏平台:PC/PS3/PS4/PSVita
发售日期: +
游戏类型:第三人称射击
游戏平台:PS4
发售日期: +
游戏类型:动作冒险
游戏平台:PC/XboxOne/PS4/WiiU
发售日期:
游戏类型:MMORPG
游戏平台:PC
发售日期: +
游戏类型:第三人称射击
游戏平台:PC
发售日期:2017年3月 +
游戏类型:动作冒险
游戏平台:PC
发售日期:2017年第一季度 +
游戏类型:即时战略
游戏平台:PC
发售日期:2017年3月 +
游戏类型:动作
游戏平台:PS4
发售日期:2017年第一季度 +
游戏类型:角色扮演
游戏平台:XboxOne
发售日期:2017年初 +
游戏类型:角色扮演
游戏平台:PC/PS4
发售日期:2017年初 +
游戏类型:竞速游戏
游戏平台:PC
发售日期:2017年第一季度 +
游戏类型:冒险解谜
游戏平台:PC
发售日期: +
游戏类型:动作冒险
游戏平台:PC
发售时间: +
游戏类型:第一人称射击
游戏平台:PC/XboxOne/PS4
发售时间: +
游戏类型:动作
游戏平台:PC/PSVita
发售时间: +
游戏类型:冒险解谜
游戏平台:PC
发售时间: +
游戏类型:角色扮演
游戏平台:PC
发售时间: +
游戏类型:生存冒险
游戏平台:PC/XboxOne/PS4
发售时间: +
游戏类型:冒险游戏
游戏平台:PC
发售时间: +
游戏类型:角色扮演
游戏平台:PC
发售时间: +
游戏类型:冒险
游戏平台:PC
发售时间:Rust中文翻译(33)
5.10 生命期
本节是Rust三处描述所有权系统的其中之一.所有权是Rust最独特和引人注目的特性,这也是Rust程序员必须熟悉的一个特性.所有权使Rust得以实现它最大的设计目标,内存安全.这里有一些不同的概念,每一个都有自己的章节:
所有权,你正在读的借用(borrowing, 5.9), 以及它的关联特性'引用'生命期(5.10),以及borrowing的高级特性
这三者是相关的,也是循序渐进的.你必须要完全理解这个三个部分.
在我们讨论细节之前,有两个关于所有权系统的重要说明.
Rust致力于安全和快速.它实现这个目标通过&零花费的抽象(zero-cost abstractions)&,也就是说在Rust中,抽象花费最少的代价.我们在本章中讨论的所有分析都是在编译时完成的.你不需要为运行时开销费心.
然而,这个系统仍然有一些开销:学习曲线.很多Rust的初学者都会经历我们成为&与借用检测做斗争&的过程.也就是说Rust编译器拒绝编译程序员认为是可用的代码.因为程序员关于所有权如果运行的想法和真正的Rust规则经常发生冲突.你在开始的时候也会尽力类似的情况.然而这是好消息,更多有经验的Rust程序员反馈说一旦他们适应了这个规则一段时间以后,他们就会斗争的越来越少.
有了这个铺垫,我们来学习生命期.
5.10.2 生命期
把一个正在被使用的资源的引用借给别人会引起会乱.例如,想一下这个操作:
我请求一个某种类型资源的句柄我借给你这个资源的一个引用我决定我使用完了这个资源,释放了它,而你还在使用这个引用你决定使用这个资源
Oh!你的引用指向了一个无效的资源.这被称为悬浮指针,或&释放后使用&,当资源就是内存的时候.
解决这个问题,我们需要确保第四步不会在第三步之后发生.Rust的所有权系统通过生命期来实现,它描述了引用适用的作用域.
当我们有一个带有一个引用参数的函数时,我们就会隐式的或显式的成为引用的生命期:
// implicit
fn foo(x: &i32) {
// explicit
fn bar&'a&(x: &'a i32) {
'a读作生命期a.技术上讲,每一个引用都有生命期,但是编译器允许你忽略他们.我们先看一下显示的例子:
&fn bar&'a&(...)
在我们的参数列表中,我们使用我们起的名字:
...(x: &'a i32)
如果我们使用了一个&mut 引用,我们就这样:
...(x: &'a mut i32)
如果比较&mut i32和&'a mut i32,他们是一样的,仅是'a插入到了&
和mute i32之间而已.我们把&mut i32读作&一个指向i32的可变引用&,把&'a mut i32读作&一个指向i32的可变引用,生命期是'a&.
当你使用struct时你同样需要显式生命期:
struct Foo&'a& }
& & x: &'a i32,
fn main() {
& & let y = &5; // 和'let _y = 5; let y = &_y;'一样
& & let f = Foo {x: y};
& & println!(&{}&, f.x);
正如你看到的,structs也有生命期.可函数具有同样的形式,
struct Foo&'a& {
声明了一个生命期'a,并且
x: &'a i32,
使用了它.为什么我们需要生命期呢?我们需要保证任何一个Foo的引用不能生存的长于它包含的一个i32引用.
考虑作用域:
思考生命期的一种方法就是虚拟一个引用的可用的作用域.例如:
fn main() {
& & &let y = &5;// -+ y 进入作用域
& & & & & & & & // &|
& & &// stuff &&// &|
& & & & & & & & // &|
} & & & & & & &&// -+ y 离开作用域
struct Foo&'a& {
& & x: &'a i32,
fn main() {
& & &let y = &5; & & & & &// -+ y 进入作用域
& & &let f = Foo {x: y}; &// -+ f 进入作用域
& & &// stuff && & & & & &// &|
& & & & & & & & & & & & & // &|
} & & & & & & & & & & & &&// -+ y和f都离开作用域
f生活在y的作用域中,所以一切正常.如果不是呢?这个代码没法工作:
struct Foo&'a& {
& & &x: &'a i32,
fn main() {
& & & & & & & & & & & & &// -+ x goes into scope
& & & & & & & & & & & & & & & &// &|
& & &{ & & & & & & & & & & & &&// &|
& & & & & let y = &5; & & & & &// ---+ y goes into scope
& & & & & let f = Foo { x: y };// ---+ f goes into scope
& & & & & x = &f.x; & & & & & &// &| | error here
& & &} & & & & & & & & & & & &&// ---+ f and y go out of scope
& & & & & & & & & & & & & & & &// &|
& & &println!(&{}&, x); & & & &// &|
} & & & & & & & & & & & & & & &// -+ x goes out of scope
WOW!正如你看到的,f和y小于x的作用域.当我们x = &f.x时,我们创建了一个引用指向超出了其作用域的对象上.
命名的生命期就是把这个作用域起来一个名字.这是第一步.
static生命期是一种特殊的生命期.它表示某些东西具有整个程序的生命期.多数Rust程序员第一次使用'static处理字符串:
let x: &'static str = &Hello, world.&;
字符串字面常量具有&'static str类型是因为引用总是存在的:他们会存在于最后的二进制文件的数据段中.另一个例子是全局变量:
static FOO: i32 = 5;
let x: &'static i32 = &FOO;
把一个i32添加到二进制文件的数据段中,然后x是一个指向它的引用.
生命期省略:
Rust提供函数体内的强有力的局部类型引用.但是这不能使用在签名中的类型推导.然而,基于人体工学的原因,一个非常严格的次要的推导算法&生命期省略&可以应用于函数签名.它只作用在函数签名中,而不是函数体中,只作用在生命期参数,有三个值得纪念的明确的规则.这使得生命期省略成为了书写函数签名的短板,不隐藏真实类型可以导致完整的本地类型推导.
当讨论生命期省略的时候,我们使用术语输入生命期和输出生命期.输入生命期是和函数参数有关的生命期,输出生命期是和返回值有关的生命期.例如,这个函数有一个输入生命期:
fn foo&'a&(bar: &'a str)
这个有一个输出生命期:
fn foo&'a& -& &'a str
这个有输出和输入生命期:
fn foo&'a&(bar: &'a str) -& &'a str
这里是三条规则:
每一个函数参数中省略的生命期都会成为一个明确的生命期参数如果有一个输入生命期,不管是否省略,他的生命期会被分配给函数返回值中所有被省略的生命期如果有多个输入生命期,其中一个是&self或者&mut self,self的生命期就会被分配给所有省略的输出生命期
否则,就会有一个错误指向一个省略的输出生命期
例子: 这里有一些关于省略生命期的例子.我们把每个例子配对来显示生路的版本和展开的版本
fn print(s: &str); // elided
fn print&'a&(s: &'a str); // expanded
fn debug(lvl: u32, s: &str); // elided
fn debug&'a&(lvl: u32, s: &'a str); // expanded
// In the preceding example, `lvl` doesn't need a lifetime because it's not a
// reference (`&`). Only things relating to references (such as a `struct`
// which contains a reference) need lifetimes.
fn substr(s: &str, until: u32) -& & // elided
fn substr&'a&(s: &'a str, until: u32) -& &' // expanded
fn get_str() -& & // ILLEGAL, no inputs
fn frob(s: &str, t: &str) -& & // ILLEGAL, two inputs
fn frob&'a, 'b&(s: &'a str, t: &'b str) -& & // Expanded: Output lifetime is unclear
fn get_mut(&mut self) -& &mut T; // elided
fn get_mut&'a&(&'a mut self) -& &'a mut T; // expanded
fn args&T:ToCStr&(&mut self, args: &[T]) -& &mut Command // elided
fn args&'a, 'b, T:ToCStr&(&'a mut self, args: &'b [T]) -& &'a mut Command // expanded
fn new(buf: &mut [u8]) -& BufW // elided
fn new&'a&(buf: &'a mut [u8]) -& BufWriter&'a& // expanded
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:26236次
排名:千里之外
译文:33篇
评论:13条
(3)(24)(7)(2)(1)}

我要回帖

更多关于 rust怎么打中文 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信